파이썬 숫자맞추기 질문있습니다

조회수 681회

정답맞추는 기회를 두번으로하고, 두번째 기회에서 첫번째 비교결과를 제공하려고 하는데요.

밑에있는대로 실행하면 두번째 입력값을 받지못하고 문자열로 나오는데 input함수를 추가하면 오류가 뜨고해서 방법좀 알려주실수 있을까요?

from random import randint

answer=randint(1,9)
print("숫자 게임에 오신 것을 환영합니다.")
g=input("숫자를 맞춰보세요: ")
guess=int(g)

if (guess==answer):
    print("사용자가 이겼습니다.")
elif (answer>guess):
    print(guess,"보다 큰 숫자로 다시 맞춰보세요: ")
    if(answer==guess) :
      print("사용자가 맞췄습니다.")
    else:
      print("당신은 바보입니다")
      print("게임 종료")
else:
    print(guess,"보다 작은 숫자로 다시 맞춰보세요: ")
    if answer==guess:
      print("사용자가 맞췄습니다.")
    else:
      print("당신은 바보입니다.")
      print("게임 종료")
  • input 함수를 추가하면 됩니다. input 함수를 추가했을 때의 오류를 잘 고쳐보세요. nowp 2020.4.26 01:09

1 답변

  • 아래처럼 하시면 됩니다.

    아마, int로 형 변환을 안 해주셨기 때문으로 생각됩니다.

    from random import randint
    
    answer=randint(1,9)
    
    print(answer)
    
    print("숫자 게임에 오신 것을 환영합니다.")
    g=input("숫자를 맞춰보세요: ")
    guess=int(g)
    
    if (guess==answer):
        print("사용자가 이겼습니다.")
    
    elif (answer>guess):
        guess = int(input("보다 큰 숫자로 다시 맞춰보세요: "))
        print(guess, ",", answer)
    
        if(answer==guess) :
          print("사용자가 맞췄습니다.")
    
        else:
          print("당신은 바보입니다")
          print("게임 종료")
    
    else:
        guess = int(input("보다 작은 숫자로 다시 맞춰보세요: "))
    
        if answer==guess:
          print("사용자가 맞췄습니다.")
    
        else:
          print("당신은 바보입니다.")
          print("게임 종료")
    

    하지만, 이런 코드의 경우는 코드의 재사용을 최대한 방지하시여 직관적이게 아래처럼 하시는 걸 추천드립니다.

    from random import randint
    
    answer=randint(1,9)
    
    print("숫자 게임에 오신 것을 환영합니다.")
    guess = int(input("숫자를 맞춰보세요: "))
    
    
    if (guess==answer):
        print("사용자가 이겼습니다.")
    
    else:
        if(answer>guess):
            print("보다 큰 숫자로 다시 맞춰보세요: ")
        elif(answer<guess):
            print("보다 작은 숫자로 다시 맞춰보세요: ")
    
        guess = int(input())
    
        if(answer==guess) :
          print("사용자가 맞췄습니다.")
    
        else:
          print("""당신은 바보입니다 
    게임 종료""")
    

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)