def를 이용하여 숫자추측하는 코딩을 하려합니다.

조회수 423회

def를 이용해 num_guess라는 코딩을 하려고 합니다.

기존 num_guess코딩은

import random

answer = random.randint(1,100)

try_cnt = 5

while True:
    if try_cnt == 0:
        print("Game over.\nThe Answer is {}".format(answer))
        break
    your_answer = eval(input("숫자를 입력해주세요:"))
    if answer == your_answer:
        print("Right Answer!")
        break
    elif answer > your_answer:
        try_cnt -= 1
        print("Answer is over than your_answer.")
    else:
        try_cnt -= 1
        print("Answer is less than your_answer.")

매개변수를 무조건 지정해서 코딩을 해야하는 도저히 감이 오질 않네요ㅠㅠ 답변부탁드립니다,,

  • (•́ ✖ •̀)
    알 수 없는 사용자
  • 감이 오지 않으신다니 유감이네요. 그래서 질문은 무엇인가요? (꿀팁: “질문”이란 예, 아니오, 그것은 ~~입니다 3가지 중 하나로 답변할 수 있는 진술을 뜻합니다.) 엽토군 2020.1.20 20:49
  • 과연 질문은 무엇 편집요청빌런 2020.1.20 20:52

1 답변

  • 질문이 이해는 안되지만...펑션으로 처리하기를 원하는 것 같습니다.

    아래 코드 참고하세요.

    def num_guess(answer, try_cnt=5):
        for _ in range(try_cnt):
            your_answer = int(input("숫자를 입력해주세요:"))
            if answer == your_answer:
                print("Right Answer!")
                return
            print("Answer is over than your_answer." if answer > your_answer else "Answer is less than your_answer.")
        print("Game over.\nThe Answer is {}".format(answer))
    
    
    import numpy as np
    
    a = np.random.randint(0, 100)
    
    num_guess(a)
    
    
    숫자를 입력해주세요:40
    Answer is over than your_answer.
    
    숫자를 입력해주세요:50
    Answer is over than your_answer.
    
    숫자를 입력해주세요:60
    Answer is less than your_answer.
    
    숫자를 입력해주세요:55
    Answer is over than your_answer.
    
    숫자를 입력해주세요:56
    Answer is over than your_answer.
    Game over.
    The Answer is 57
    

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

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

(ಠ_ಠ)
(ಠ‿ಠ)