코딩 가위바위보 게임

코딩 가위바위보 게임

작성일 2024.04.16댓글 2건
    게시물 수정 , 삭제는 로그인 필요

import random as r
srp=['가위','바위','보']
challenge,win,draw,lose=0,0,0,0

while True:
    csrp=r.randint(0,2) #컴퓨터의 가위바위보
    mySrp=input("가위바위보?") #나의 가위바ㅜ이보
    if mySrp=='가위':
        iSrp=0
    elif mySrp=='바위':
        iSrp=1
    elif mtSrp=='보':
        iSrp=2
    else:
        print("잘못입력하셔씃ㅂ니다."\n)
        break

    if isrp==csrp:
        print(f"나:{mysrp},컴퓨터:{srp[csrp]}")
        print("비겻음"\n)
        draw=+1
    elif isrp==(csrp-2) or isrp==(csrp+1):
        print(f"나:{mySrp}, 컴퓨터:{srp[csrp]}")
        print("내가 이김"\n)ㅖ
    else:
        print(f"나:{mySrp}, 컴퓨터:{srp[csrp]}")
        print("큼ㅍ투터 이김"\n)
        lose=+

    retry=input("꼐속 입력할래?")
    if retry !='y':
        break
    else:
        continue

print(f"[chanllenge]/[win]/[draw]/[lose]
print("종료")


어디어디 수정해야하나여?ㅜㅜ


#코딩 가위바위보 #파이썬 가위바위보 코딩

profile_image 익명 작성일 -

import random as r srp=['가위','바위','보'] challenge,win,draw,lose=0,0,0,0 while True: csrp=r.randint(0, 2) #컴퓨터의 가위바위보 mySrp=input("가위바위보?") #나의 가위바ㅜ이보 if mySrp=='가위': iSrp=0 elif mySrp=='바위': iSrp=1 elif mySrp=='보': ## 이곳 대소문자 구분 iSrp=2 else: print("잘못입력하셔씃ㅂ니다.") break if iSrp==csrp: ## isrp => iSrp print(f"나:{mySrp},컴퓨터:{srp[csrp]}") print("비겻음") draw = draw + 1 elif iSrp==(csrp-2) or iSrp==(csrp+1): print(f"나:{mySrp}, 컴퓨터:{srp[csrp]}") print("내가 이김") win= win + 1 # win 추가 else: print(f"나:{mySrp}, 컴퓨터:{srp[csrp]}") print("컴퓨터 이김") lose = lose + 1 challenge= challenge + 1 # challenge cnrk retry=input("꼐속 입력할래?") if retry != 'y': break else: continue print(f"{challenge}/{win}/{draw}/{lose}") # )닫음 # challenge spell 오류 print("종료")

profile_image 익명 작성일 -

우선 첫번째로 코드 문법 오류와 오타가 너무 많습니다.

1. 코드를 읽어보시면 "+="를 "=+"라고 쓴 부분은 문법 오류입니다. 값을 더하는 복합대입연산자는 "+="입니다.

모든 복합대입연산자는 이퀄 기호가 뒤에 옵니다.

2. isrp를 조건문에서만 선언했습니다. 대부분의 언어에서 조건문이나 반복문 블럭 안에서

선언된 변수는 해당 구문 블럭 밖에서 사용할 수 없습니다.

전역 또는 상위 블럭에서 변수를 선언해줘야 합니다.

3. 마지막에 f-string을 사용하셨는데, 변수를 넣는 문법이 틀렸습니다.

[ ] 안에 넣는게 아니고, { } 안에 넣는겁니다. Shift 누르고 쓰는거요. 이것을 중괄호 또는 브레이스라고 부릅니다.

두번째로 조건문을 너무 복잡하게 쓰십니다. or, and를 적절하게 활용해서 쓰시면 위와 같은 상황에서 조금 더 편하게 승/패/무승부를 처리할 수 있습니다. 또한, isrp에 숫자를 담는 과정도 list.index 함수를 통해 간략하게 줄일 수 있습니다.

아래 코드는 작성자분의 코드를 기반으로 제가 고쳐본 코드입니다. 참고가 되셨길 바랍니다.

from random import randint srp=['가위','바위','보'] challenge,win,draw,lose=0,0,0,0 while True: com_hand = randint(0,2) #컴퓨터의 가위바위보 my_hand = None input_srp = input("가위바보!\n내가 낼 것은?:") if input_srp in srp: my_hand = srp.index(input_srp) else: answer_exitGame = input("잘못입력하셨습니다.\n게임을 끝내시겠습니까? <Y/N>:") if answer_exitGame == "Y" or answer_exitGame == "y" : print("게임을 종료합니다.") break print(f"나:{input_srp},컴퓨터:{srp[com_hand]}") didDraw = my_hand==com_hand didLose = ( (my_hand==0 and com_hand == 1) or (my_hand==1 and com_hand==2) or (my_hand==2 and com_hand==0) ) if didDraw: print("무승부!") draw+=1 elif ( didLose ): print("패배!") lose+=1 else: print("승리!") win+=1 challenge+=1 retry=input("계속 하시겠습니까?계속 하시려면 Y를 입력하십시오.\n그만하시려면 아무 키나 입력하십시오.\n입력:") if retry == 'y' or retry =='Y': continue else: break print(f"| 도전 횟수 | 승 리 | 패 배 | 무승부 |") print(f"| {challenge} | {win} | {lose} | {draw} |") print("게임 종료")

파이썬 코딩 가위바위보

컴퓨터와 가위바위보 게임 컴퓨터는 가위, 바위, 보 중 하나를 생성 사용자는 셋 중 하나 입력한다. 코드 어떻게 짜나요? import random sel...

c++ 가위바위보 게임 코딩하기

조건에 맞게 코딩해주시는분 내공 300드립니다 .. 출력만 조금 수정해주시면 될 것 같습니다. #include <iostream> using namespace std; int...

파이썬 코딩 가위바위보

... geometry("300x200") def 가위바위보게임(): 가위바위보=["가위","바위","보"] #if random.coice(["가위","바위","보"])=="가위": if random.choice...

가위 바위 보 코딩하기 ㅠ

... printf("가위, 바위, 보 게임에 오신 것을 환영합니다.\n"); printf("하나를 선택하세요(가위-0, 바위-1, 보-2): "); scanf("%d", &user); printf...

c++ 가위바위보 게임

... cout << "무승부\n\n"; } } void main() { cout << " !!!가위바위보게임!!!\n... 나누어 코딩할 필요가 없습니다. 2. C++로 객체지향 코딩을...

파이썬 가위바위보

... 같이 코딩을 하셨던 것을 보았습니다. 위에서 가위... F:/지식in/가위바위보-혼자하기1.py ======================= ### 컴퓨터와 나의 가위, 바위, 보 게임 ### 컴퓨터를...