1. 먼저 숫자 1부터 45까지 채워서 추첨기를 준비한다.
lotto = [] # 로또 추첨기로 사용할 빈 리스트 선언
for i in range(1, 46):
lotto.append(i) # 1부터 45까지 숫자를 채움.
혹은
lotto = [i for in range(1, 46)]
2. lotto 리스트에 저장된 데이터를 1줄에 10개씩 2자리로 출력한다.
for i in range(len(lotto)): # lotto 리스트의 길이만큼(45) i를 반복한다. ...?? 하나 모자란거 아님...? 길이(45) - 1이니까..
print('%02d' % lotto[i], end = '') # i를 순서대로 출력, 사이에는 공백
if (i + 1) % 10 == 0: # 10개씩 출력하고
pirnt() # 줄 바꿈
3. 섞는다.
lotto[0] (고정자리) 빼고 lotto[1] ~ lotto[44] 중에서 랜덤한 위치를 선택해서 두 기억 장소 (고정자리와 바뀔 숫자의 자리)의 데이터를 교환한다.
for i in range(1000000):
r = random.randrange(1, 45)
lotto[0], lotto[r] = lotto[r], lotto[0] # 파이썬의 튜플 덕분에 가능한 것.
# 자리로 따졌을 때 두번째 자리부터 마지막 자리까지 숫자를 마구 섞는 것.
4. 섞은 후 상태를 출력한다. - 이제 여기서 6개의 번호 + 보너스 번호 1개를 출력할 것.
for i in range(len(lotto)):
print('%02d' % lotto[i], end '')
if (i + 1) % 10 == 0:
print()
5. 1등 번호와 보너스 번호를 출력한다.
print('1등 번호 : ', end = '')
for i in range(6)
print('%02d' % lotto[i], end = '')
time.sleep(0.3)
print('보너스 번호 : %02d' % lotto[6])
'python' 카테고리의 다른 글
파이썬/python/주민등록번호검증문제 (0) | 2019.12.26 |
---|---|
python/파이썬/유클리드 호제법/ (0) | 2019.12.24 |
코딩도장 문제풀이/ Special Sort (0) | 2019.12.22 |
python/파이썬/나이문제/과목평균문제/ (0) | 2019.12.22 |
python_for 문, range (0) | 2019.12.20 |