728x90
반응형
문제설명
가위, 바위, 보 게임 만들기
▶ 문제풀이
import random
a = ['가위', '바위', '보']
num = random.randint(0,2)
plug = 1
cnt = 2
while plug == 1:
if cnt == 0:
plug = 0
break
me = int(input("0(가위), 1(바위), 2(보)를 입력하세요 : "))
print("컴퓨터 : " , a[num])
print("유저 : " , a[me])
if a[me]==a[num]:
print("비겼습니다.")
elif (a[me]=="가위"):
if a[num]=="바위":
print("졌어요.")
cnt -= 1
elif a[num] == "보":
print("이겼어요")
elif (a[me]=="바위"):
if a[num]=="보":
print("졌어요.")
cnt -= 1
elif a[num] == "가위":
print("이겼어요")
elif (a[me]=="보"):
if a[num]=="가위":
print("졌어요.")
cnt -= 1
elif a[num] == "바위":
print("이겼어요")
else:
print("잘못된 값을 입력했어요.")
▶ 다른사람 문제풀이(딕셔너리 활용)
import random
#0 가위,이기는 규칙? 2 보
#1 바위,이기는 규칙? 0 가위
#2 보 ,이기는 규칙? 1 바위
#rule은 내꺼:[이기는 번호,지는 번호] 로 이루어짐
rule ={ 0:[2,1] ,1:[0,2], 2:[1,0] }
name=["가위","바위","보"]
score =0
for i in range(3):
# user input 을 받는다.
user = int(input(f"0:가위, 1:바위, 2:보 입력 ") )
#com input random 으로 뽑느다.
com = int(random.choice( [0,1,2]))
print (f"나= {name[user]} vs 컴 = {name[com]}" )
#이미 딕셔너리로 [0]에는 이기는거 [1]에는 지는거 써놨다.
if rule[user][0] == com:
score = score+1
print (f"이겼다 !!!")
elif rule[user][1] == com:
print (f"졌다..")
else:
print (f"비겨따~")
#한판 하고 점수표기
print ("-------------")
print (f"- 내점수: {score} -")
print ("-------------\n\n")
print (f"끝!")
728x90
반응형
'인공지능, 데이터분석 > [python] 문법, 실습문제' 카테고리의 다른 글
[Python] import collections 모듈이란? (0) | 2023.05.31 |
---|---|
[에러 수정] python, numpy, pandas 에러 구문 해결하기 (0) | 2023.05.12 |
[Python 문법] 파이썬 with open(파일 읽기, 쓰기, 추가), 인공지능 챗봇 실습, 파일복사 (0) | 2023.04.26 |
[Python 문법] 파이썬 리스트 컴프리헨션(comprehension) (0) | 2023.01.06 |
[Python 문법] 파이썬 내장함수 enumerate (0) | 2023.01.02 |