그냥 하나 뽑은 순간 그 다음은 1/44 1/43 이렇게 짜는게 더 편하고 깔끔한거 아닌가 생각함
물론 기본배경지식이 하나도 없기에 전개과정은 몰라서
아시발 하고 혼자 끙끙대다가 강사 코딩 따라침
머가 맞는거?
댓글 9
ㄴㄴㄴ
ㅇㄴ(175.209)2023-07-26 18:48
랜덤한 숫자에 범위를 지정하는 경우엔 1/44, 1/43등으로 랜덤숫자 범위를 조절하게 되면 결국 뽑은 숫자가 나왔을때 숫자범위가 제한된거니 중복도 해결하지 못하고 나올수있던 45, 44번은 안나오지않을까요?
위 경우라면 뽑았던 숫자보다 크면 숫자를 더하는 로직을 추가적으로 구현해야할것같아용
PEPSI_ZERO_SUGAR(j785x638rr5q)2023-07-26 19:36
답글
아니면, 아예 큐나 스택 등의 자료구조를 가져오고, 내용물을 셔플해가면서 데이터를 빼내도 되구요
아마 깔끔하게 하고싶다는 내용에 부합할것같은뎅
PEPSI_ZERO_SUGAR(j785x638rr5q)2023-07-26 19:38
답글
아 제가 생각했던건
처음에 5를 뽑았을때 처음에 뽑은 5를 제외해서 1/44하는 식으로 코딩을 짜면 오히려 더 복잡한건가 했어요
익명(223.38)2023-07-26 19:38
답글
이제 랜덤이지만 5는 안나오는 랜덤으로
익명(223.38)2023-07-26 19:38
답글
랜덤한 숫자를 뽑는 방식을 어떻게 하셨느냐에 따라 달라질거에요
그래서 일단 떠오르는 두가지 경우를 상정해서 답변해드린건뎅
PEPSI_ZERO_SUGAR(j785x638rr5q)2023-07-26 19:40
답글
제가 아직 너무 문외한이라서 잘 모르는거 같아요 약간 현실 로또 공 추첨 하는걸 생각하고 말한거 같아요ㅋㅋ 무슨 말씀 하신건지 이해했습니다 감사합니다
익명(223.38)2023-07-26 19:41
답글
음... int num = random(1,45); 나 int num = random() % 45 + 1; 혹은 int num = (int) (random() * 45) + 1; 같이 난수생성기를 사용하는 경우라면 애초에 뽑은 숫자가 몇이니까 그 숫자가 나오지 말라고 할 수가 없다고 하면 되겠네요
PEPSI_ZERO_SUGAR(j785x638rr5q)2023-07-26 19:46
답글
뽑았다는걸 인지시키기 위해선 1부터 45까지의 숫자가 들어간 자료구조를 이용해야할거에요
그 외의 방법이 있을수도 있지만.. 일단 저게 가장 깔끔할것같네요
말씀하신 뽑아놓고 그 안에서 다시 돌린다는 개념과 가장 가까운것같아서
ㄴㄴㄴ
랜덤한 숫자에 범위를 지정하는 경우엔 1/44, 1/43등으로 랜덤숫자 범위를 조절하게 되면 결국 뽑은 숫자가 나왔을때 숫자범위가 제한된거니 중복도 해결하지 못하고 나올수있던 45, 44번은 안나오지않을까요? 위 경우라면 뽑았던 숫자보다 크면 숫자를 더하는 로직을 추가적으로 구현해야할것같아용
아니면, 아예 큐나 스택 등의 자료구조를 가져오고, 내용물을 셔플해가면서 데이터를 빼내도 되구요 아마 깔끔하게 하고싶다는 내용에 부합할것같은뎅
아 제가 생각했던건 처음에 5를 뽑았을때 처음에 뽑은 5를 제외해서 1/44하는 식으로 코딩을 짜면 오히려 더 복잡한건가 했어요
이제 랜덤이지만 5는 안나오는 랜덤으로
랜덤한 숫자를 뽑는 방식을 어떻게 하셨느냐에 따라 달라질거에요 그래서 일단 떠오르는 두가지 경우를 상정해서 답변해드린건뎅
제가 아직 너무 문외한이라서 잘 모르는거 같아요 약간 현실 로또 공 추첨 하는걸 생각하고 말한거 같아요ㅋㅋ 무슨 말씀 하신건지 이해했습니다 감사합니다
음... int num = random(1,45); 나 int num = random() % 45 + 1; 혹은 int num = (int) (random() * 45) + 1; 같이 난수생성기를 사용하는 경우라면 애초에 뽑은 숫자가 몇이니까 그 숫자가 나오지 말라고 할 수가 없다고 하면 되겠네요
뽑았다는걸 인지시키기 위해선 1부터 45까지의 숫자가 들어간 자료구조를 이용해야할거에요 그 외의 방법이 있을수도 있지만.. 일단 저게 가장 깔끔할것같네요 말씀하신 뽑아놓고 그 안에서 다시 돌린다는 개념과 가장 가까운것같아서