파이썬 반복문 질문드립니다

조회수 533회

어떻게하면 반복문(range, for)등을 써서 최대 5개의 데이터만 입력 받을 수 있을까요?

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 반복문을 써서 최대 5개의 데이터만 받으라니 그게 무슨 소리냐 싶으시죠?

    데이터를 받는 작업을 + 반복하되 + 최대 5번까지만 하라는 소리입니다.

    말장난 같지만 중요한 차이가 있습니다. 기본적으로 질문자님이 구현해야 하는 것은, 입력을 받는 작업인데, 그것이 반복되어야 하고, 단 그 반복이 최대 5번까지만 되어야 한다는 말입니다.

    이해 되시나요? (이해하셔야 합니다. 이게 이해되기 전까지는 다음으로 넘어가지 말아 주세요.)


    최대 5번 반복이라는 건 어떻게 하는 걸까요?

    두 가지 방법이 있습니다. 첫번째 방법은:

    1. 기본적으로 아무 생각 없이 무조건 영원한 반복을 한다.
    2. 어떤 사건이 5번 발생했다면 그 반복을 그만한다.
    3. 기타 반복을 그만해야 할 현저한 사유가 발생하면 반복을 그만한다.

    두번째 방법은:

    1. 딱 5번 반복하기로 계획하고 1번째부터 한다.
    2. 반복을 그만해야 할 현저한 사유가 발생하면 그 반복을 그만한다.

    여기까지 이해되시나요? (아니라면 아래로 넘어가지 말아 주세요.)


    1번 방법은 어떻게 구현할까요? 파이썬에서 무한 반복은 while이라는 걸로 구현됩니다.

    inputs = []
    inTheLoop = True
    
    while inTheLoop :
        nput = input('입력을 하시와요. "그만"이라고 입력하시면 그만합니다. 5개까지만 입력 가능합니다요.')
        if nput == '그만' :
            inTheLoop = False
        else :
            inputs.append(nput)
            inTheLoop = len(inputs) < 5
    
    print(inputs)
    

    2번 방법은 어떻게 구현할까요? 파이썬에서 유한 반복은 for라는 것으로 합니다.

    inputs = []
    
    for x in range(1, 5) :
        nput = input('입력을 해! "그만"이라고 입력하면 그만한다! 5개까지만 입력 가능하다고!')
        if nput == '그만' :
            break
        else :
            inputs.append(nput)
    
    print(inputs)
    

    소스 실행도 한번 해보시고, 이렇게 저렇게 고쳐보시고, 공부해 보세요.

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

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

(ಠ_ಠ)
(ಠ‿ಠ)