• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

로또 예상번호 만들기 질문

23.11.04 21:43 작성 23.11.04 21:51 수정 조회수 136

0

질문에 대한 답변은

업무가 바쁘지 않으면, 보통 2~3일 내에 드립니다.

 

다만 이해하기 어려운 질문은 답변 드리기 어려우니,

코드와 오류 메시지를 같이 첨부해 주시기 바랍니다.

 

  1. 해설하시면서 우선 이해를 못한 부분이 lotto_num에 대해서 따로 값을 넣으라 이런 이야기도 없으시고 주신 명령어는 lottonumber의 리스트는 비어있다. 이 내용인데 어떻게 해서 random_number의 값이 lotto_num 리스트에 들어갔는지 궁금하고

 2. 처음에 for문을 이용하셨을 때 range함수를 이용하면 0~5번하는건데 이야기하셨을 때 몇번반복될지 모른다고 하셨는데 왜그렇게 이야기하셨는지 이해를 잘 못했습니다. range함수는 지정값 -1까지 반복하는게 아닌가요??

import random

lotto_num = [] #빈로또번호 리스트 생성
def getrandomnumber():
    number = random.randint(1,45)
    return number

for i in range(6):
random_number = getRandomNumber()
print(random_number)

 

  1. 설명 처음에 하실때 return부분 설명을 자세히 안하셨더라고요. 그래서 return 이부분을 이해를 못하는데 저값의 의미하는게 뭔가요??

import random

lotto_num = [] #빈로또번호 리스트 생성
def getrandomnumber():
    number = random.randint(1,45)
    return number

count = 0 
while True :
    if count > 5:
        break
    radom_number = getrandomnumber()
    if radom_number not in lotto_num:
        lotto_num.append(radom_number)
        count = count + 1

print(lotto_num)

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.11.06

안녕하세요 안정선님, 인프런 AI 인턴이에요.

  1. 코드에서 random_number 값을 lotto_num 리스트에 넣는 부분은 다음과 같은 과정으로 이루어집니다.

    • getrandomnumber 함수를 호출하여 랜덤한 숫자를 얻습니다.
    • 얻은 랜덤한 숫자를 random_number 변수에 저장합니다.
    • random_number 값을 lotto_num 리스트에 추가합니다.
      따라서 코드에서 random_number 값이 lotto_num 리스트에 들어가는 것입니다.
  2. 첫 번째 코드에서 range 함수는 0부터 지정한 숫자-1까지의 범위를 반복합니다. 따라서 range(6)은 0부터 5까지의 범위를 반복하게 됩니다. 이렇게 범위를 반복하는 이유는 for문을 6번 반복하면서 랜덤한 숫자를 생성하여 출력하기 위함입니다.

첫 번째 코드의 수정이 필요한 부분:

import random

lotto_num = [] # 빈로또번호 리스트 생성
def getrandomnumber():
    number = random.randint(1,45)
    return number

for i in range(6):
    random_number = getrandomnumber()
    lotto_num.append(random_number)

print(lotto_num)

두 번째 코드는 getrandomnumber 함수를 사용하여 1부터 45까지의 랜덤한 숫자를 얻어,
중복되지 않는 로또 번호를 만들기 위해 while문을 사용하고, lotto_num 리스트에 추가하면서 총 6개의 로또 번호를 생성합니다.

두 번째 코드에는 큰 문제가 없어 보입니다. 다만 radom_number 변수 오타가 있어서 radom_number 대신 random_number로 수정해야 합니다.

수정된 코드:

import random

lotto_num = [] # 빈로또번호 리스트 생성
def getrandomnumber():
    number = random.randint(1,45)
    return number

count = 0
while True :
    if count > 5:
        break
    random_number = getrandomnumber()
    if random_number not in lotto_num:
        lotto_num.append(random_number)
        count = count + 1

print(lotto_num)

이상입니다. 추가적인 질문이 있으시면 언제든지 물어보세요. 감사합니다!