당우 일기장

1.개인과제 )파이썬 업다운게임 만들기 본문

내일배움캠프

1.개인과제 )파이썬 업다운게임 만들기

당우 2021. 12. 21. 17:52

술자리나 레크레이션 등 에서 주로 하는 게임인 업 다운 게임을 파이썬으로 만들어보자.

 

게임 규칙.

1에서 100까지의 랜덤한 숫자를 5번 안으로 업 다운 을 하여서 정답을 맞춰나가는 게임입니다.

import random

# c= 30
c = random.randrange(1, 101)  # 1~100 까지 랜덤한 숫자

x = 0    # 횟수 체크
try:
    for n in range(5): # 5번의 기회를 반복
        p = input('숫자를 입력하세요!: ') # 값 입력
        if c == int(p):
            print('정답')   # 답이 맞을경우 break 를 통해 반복문 종료
            break
        elif c > int(p):
            x += 1    # 답이 아닐경우 카운트
            print('업')
        elif c < int(p):
            print('다운')
            x += 1   # 답이 아닐경우 카운트
    if x == 5:  # 5번째에도 답을 맞추지못하면  실패 출력
        print('실패')


except:  # 예외의 경우에 아래 문장을 출력
    print("숫자만 입력 가능합니다.")

 

코드설명.

 

먼저 파이썬의 기본 패키지인 random(랜덤) 을 사용해야합니다

랜덤 패키지를 사용하기위해서 먼저 임포트를 시켜줍니다

 

그리고 변수 c(컴퓨터) 를 만들어주고 1 이상 100 미만의 랜덤한 숫자를 출력시켜주어야 하기에

random.randrange 를 넣어줍니다.

 

(randrange는 (a, b)일때 a 이상 b 미만인 수가 랜덤으로 나오게하는코드입니다.)

 

그리고  5회이상이되면 실패가 나올수있게 카운트 변수를 x 로 지정을 하였고

 

for 문을 사용해서 반복문을 사용해주었습니다. 

for 문에서 n 이 5번을 반복하도록 하고 

 숫자를 입력할수있게 p (플레이어) 를 지정해 인풋 함수 넣어줍니다

그리고 차례대로 if 문을 사용하여

  p가 c 보다 크면 다운을 출력 , p가 c 보다 작으면 업 을 출력,

p와 c의 값이 같으면 성공을  출력하고 반복문을 종료하는 break 를 사용하여 게임을 종료하게 만들었습니다

 

그리고 5회 안에 맞추지 못하면 x 변수가 카운트되어서 실패를 출력하고

반복문이 5회가 되었으므로 종료를 하게됩니다 

 

+

try 는 예외처리를 하는 함수인데 1~100 숫자  이외의 다른 값을 집어넣지못하게

아래에 except 로 '숫자만입력가능합니다' 라는 문구를 출력하게해 에러를 방지하였습니다.