파이썬 가위, 바위, 보 게임 -1

hyo_d·2022년 9월 20일
0

가위, 바위, 보 게임 -1

요구조건

  • 사용자가 가위, 바위, 보를 입력할 수 있게 한다. 이 외에 입력을 받으면 다시 입력하게 한다.
  • 컴퓨터가 가위, 바위, 보를 랜덤으로 선택한다.
  • 사용자와 컴퓨터의 값을 비교해서 게임 결과를 출력한다.

1) 먼저, 사용자의 입력을 받고 이 외의 입력을 받으면 다시 입력하게 하기 위한 While문을 작성한다.


option = ['가위','바위','보']

# player의 입력 받기

while True:
    player_value = input("가위, 바위, 보 중에서 내주세요")

    if player_value in option:
        break
    else:
        print("값을 정확히 입력해주세요.")

2) random모듈을 이용하여 컴퓨터가 가위, 바위, 보를 랜덤으로 선택하도록 한다. 이때 randint와 random.choice 두가지 방법으로 코드를 작성 할 수 있다.

import random

# coumputer의 입력 받기

# 컴퓨터 가위, 바위, 보 선택 1(randint 사용)
random_number = random.randint(0,2)
computer_value = option[random_number]

# 컴퓨터 가위, 바위, 보 선택 2(choice 사용)
computer_value = random.choice(option)

3) 사용자와 컴퓨터의 선택된 값을 출력해준다.

print(f"플레이어는 {player_value}를 선택, 컴퓨터는 {computer_value}를 선택했습니다.")

4) 두 값을 비교하여 게임 결과를 출력한다.

if player_value == computer_value:
    print("무승부")
elif player_value == "가위":
    if computer_value == "보":
        print("승리")
    else:
        print("패배")
elif player_value == "바위":
    if computer_value == "가위":
        print("승리")
    else:
        print("패배")
elif player_value == "보":
    if computer_value == "바위":
        print("승리")
    else:
        print("패배")
else:
    print("예상하지 못한 경우입니다.")

✨ 완성된 전체 코드

import random

option = ['가위','바위','보']

# player의 입력 받기

while True:
    player_value = input("가위, 바위, 보 중에서 내주세요")

    if player_value in option:
        break
    else:
        print("값을 정확히 입력해주세요.")

# coumputer의 입력 받기
# 컴퓨터 가위, 바위, 보 선택 1(randint 사용)
random_number = random.randint(0,2)
computer_value = option[random_number]

# 컴퓨터 가위, 바위, 보 선택 2(choice 사용)
computer_value = random.choice(option)

print(f"플레이어는 {player_value}를 선택, 컴퓨터는 {computer_value}를 선택했습니다.")

if player_value == computer_value:
    print("무승부")
elif player_value == "가위":
    if computer_value == "보":
        print("승리")
    else:
        print("패배")
elif player_value == "바위":
    if computer_value == "가위":
        print("승리")
    else:
        print("패배")
elif player_value == "보":
    if computer_value == "바위":
        print("승리")
    else:
        print("패배")
else:
    print("예상하지 못한 경우입니다.")
profile
햇병아리

0개의 댓글