본문 바로가기

Python_Intermediate/Program

Python Lotto Program

반응형

Code1>

import random

lottonumber = random.sample(range(1, 46), 6)

print(lottonumber)


Code1 풀이>

로또 번호는 가장 어찌보면 만들기 간단한 알고리즘이다.

random 함수로 난수를 만들어서 무작위 추출법인 sampling 으로 처리하는 방식이다.

이를 위해 Code 1은 random 함수안에 있는 sample 라는 함수를 불러들였다.

또한 range 함수를 통해 로또의 범위인 1 ~ 45 / 그중 6개를 추출하는 형식으로 이루어진다.


Code1 Output>

[1, 21, 4, 24, 43, 18]


Process finished with exit code 0


Code2>

import random

print('-' * 20)
print('lotto number 생성기')
print('-' * 20)

n = input("로또 몇 판 할거에요?(정수로 입력하세요) : ")

for i in range(0, int(n)):
lottonumber = random.sample(range(1, 46), 6)
lottonumber.sort()
print(lottonumber)

print('-' * 20)
print('행운이 가득하시기를')
print('-' * 20)


Code2 풀이>

그냥 하면 밋밋해서 안이쁘니 그냥 print 함수로 상 하단을 조금 꾸미고

사용자에게 로또 몇판을 할 것인지를 입력 받아 처리 하는 구조이다.

for문을 활용하여 사용자가 입력한 판 수 만큼 로또를 출력하는 구조이다.

사용자에게 5판을 받으면 범위는 0 ~ 5이므로 5개의 로또 번호판이 만들어지며

총 번호는 30개의 번호가 나온다.


Code2 Output>

--------------------

lotto number 생성기

--------------------

로또 몇 판 할거에요?(정수로 입력하세요) : 5

[13, 17, 27, 35, 38, 44]

[18, 22, 24, 31, 37, 45]

[5, 17, 26, 35, 39, 41]

[6, 13, 19, 23, 25, 26]

[3, 9, 19, 32, 33, 39]

--------------------

행운이 가득하시기를

--------------------


Process finished with exit code 0


Code3>

import random

print('-' * 20)
print('lotto number 생성기')
print('-' * 20)

while True:
n = input("로또 몇 판 할거에요?(정수로 입력하세요) : ")

if (n.isdigit() == True):
print('-' * 20)
for i in range(0, int(n)):
lottonumber = random.sample(range(1, 46), 6)
lottonumber.sort()
print(lottonumber)
break

else:
print('-' * 20)
print("숫자를 입력하세요.")
print('-' * 20)
continue

print('-' * 20)
print('행운이 가득하시기를')
print('-' * 20)


Code3 풀이>

꼭 정수를 입력하라면 글자를 입력하는 사람이 존재 할 수 있다.

이를 예방하기 위해 while True문을 사용하여 숫자를 입력 받을때까지 반복문을 생성했다.

사용자가 숫자를 입력안하면 숫자를 입력하라고 출력하게끔 했다.

또한 사용자가 정확하게 숫자를 입력하면 그 해당수 만큼 출력하고 종료하는 구조로 만들었다.


Code3 Output>

--------------------

lotto number 생성기

--------------------

로또 몇 판 할거에요?(정수로 입력하세요) : 다섯판

--------------------

숫자를 입력하세요.

--------------------

로또 몇 판 할거에요?(정수로 입력하세요) : 5

--------------------

[1, 6, 26, 32, 33, 44]

[5, 7, 10, 19, 20, 22]

[2, 14, 17, 27, 33, 37]

[2, 13, 14, 21, 25, 45]

[5, 9, 12, 19, 22, 35]

--------------------

행운이 가득하시기를

--------------------


Process finished with exit code 0

반응형