업다운게임에서 포함되어야 하는 기능은 다음과 같다.
- 프로그램은 다음과 같은 기능을 포함해야 합니다.
- 컴퓨터는 1부터 100 사이의 랜덤한 숫자를 생성합니다.
- 플레이어는 숫자를 입력하고, 입력한 숫자와 컴퓨터의 숫자를 비교하여 "업" 또는 "다운" 힌트를 제공합니다.
- 플레이어가 컴퓨터의 숫자를 정확히 맞히면 시도한 횟수를 알려줍니다.
- 플레이어가 숫자를 맞힐 때까지 위 과정을 반복합니다.
일단 난 파이썬 함수라는 걸 배운지 1-2일 밖에 되지 않았기 때문에...
코드를 짜는 것부터 막막했다...^^
튜터님한테 냅다 갔더니 일단 로직을 한글로 적어보라고 하셨다...
최대한 자세하게 적는 게 좋다고 하셨다!!
밑은 튜터님이랑 이야기하면서 처음 쓴 것보다 자세하게 수정한 것이다.
- 1에서 100 사이의 숫자에서 랜덤으로 한 숫자 생성하기
- 사용자의 시도 횟수 보여주기
- 사용자가 숫자 입력하기
- 사용자가 입력한 숫자와 랜덤으로 생성된 숫자를 비교
- 입력한 숫자가 랜덤 숫자보다 크면: 다운
입력한 숫자가 랜덤 숫자보다 작으면: 업
입력한 숫자가 랜덤 숫자와 같으면: 정답
일단 랜덤으로 한 숫자를 생성하려면?
import random
생성해주기!
1에서 100까지 숫자를 랜덤으로 한 숫자를 출력해야 하기 때문에
import random
answer_number = random.randint(1,100)
print(answer_number)
사용자의 시도 횟수를 보여주려면?
import random
answer_number = random.randint(1,100)
print(answer_number)
count = 0
이제 반복문 while 을 사용해서 게임이 반복될 수 있게 해줍니다.
while True:
count = count +1 #시도할 때마다 1씩 추가됨
print(f"{count}번째 시도입니다!") #시도횟수
my_guess = int(input('1~100 사이의 숫자를 입력하세요.')) #사용자 입력
if answer_number == my_guess:
print("정답입니다.") #사용자와 랜덤 숫자가 같으면 '정답입니다' 출력
print(f"{count}번 만에 맞췄습니다!")
break
elif answer_number < my_guess:
print("UP") #사용자가 입력한 숫자가 랜덤 숫자보다 작으면 UP 출력
else:
print("DOWN") #사용자가 입력한 숫자가 랜덤 숫자보다 크면 down 출력
break 잘못 적어서 이리저리 왔다갔다 적고 난리났었다 아주