소연의_개발일지
article thumbnail

사용한 함수: while, for, if, random, isdigit

 

 

1. UP & DOWN 게임 만들기

 

1.1. 제작한 코드

<python />
# for문으로 스무고개 만들기 import random import os game_end = 'n' wrong_number = 'y' user_win = 'y' while game_end != 'y': # TODO 0. 1부터 100까지 랜덤으로 숫자를 뽑는다. random_number = random.randint(1, 100) print(f"사실 숫자는: {random_number}") # TODO 1. 사용자에에게 게임의 규칙과 기회를 알려준다. print(''' ______________ || || || UP & DOWN || || GAME || ||____________|| |______________| \\\\############\\\\ \\\\############\\\\ \ ____ \\ \_____\___\____\\ UP & DOWN 게임에 오신 당신을 환영합니다. 당신에게 주어진 기회는 단 20번....! ''') life = 20 for i in range(life): #while문으로 쓰려면 while life > 0으로 사용 print(f"현재 당신의 기회: {life}번") # TODO 2. 사용자에에게 숫자를 유추해 보라고 한다. while wrong_number != 'n': user_number = input("숫자를 유추하세요: ") # TODO 3. 유추한 숫자가 컴퓨터가 생각한 숫자보다 크면 down, 아니면 up을 출력한다. # TODO 4. 3을 반복한다. 사용자가 숫자를 맞추면 몇번만에 맞췄는지 알려준다. if not user_number.isdigit():##사용자가 문자로 입력할 때 print("숫자로 입력해 주세요!") elif int(user_number) < 0 or int(user_number) > 100: #사용자가 1부터 100까지의 숫자를 입력하지 않았을 때 print("1~100까지의 올바른 번호를 입력하세요") else: wrong_number = 'n' if int(user_number) == random_number: print(f'정답입니다! 컴퓨터가 생각한 숫자는 {random_number}이었습니다.') print(f"{20-life+1}번 만에 정답을 맞췄습니다.") user_win = 'y' break elif int(user_number) > random_number: print("down") life -= 1 elif int(user_number) < random_number: print("up") life -= 1 wrong_number = 'y' if user_win == 'y': break if life == 0: ## 유저가 게임에서 실패했을 때 print(f"당신은 실패했습니다. 정답은 {random_number}였습니다.") # TODO 5. 계속할 것인지 묻는다. user_wants_continue = input("다시 하시겠습니까?(y/n): ").lower() if user_wants_continue == 'y': user_win = 'n' wrong_number = 'y' os.system("cls") else: game_end = 'y'

20_quesiton.py
0.00MB

1.2.  

1.3. 실행화면

 

문자로 답변했을 때

1~ 100까지의 숫자로 답변하지 않았을 때



 

 

동영상

 

 

profile

소연의_개발일지

@ssoyxon

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!