콘텐츠 내 자동삽입광고

광고1

posted by 초코생크림빵 2025. 9. 7. 13:43
반응형

print('정수를 입력, 0 입력 시 종료됨')

total=0

s = int(input('num : '))

while s != 0:
    total = total + s
    s = int(input('num : '))

print(f'총 합계 : {total}')

결과)
정수를 입력, 0 입력 시 종료됨
num : 80
num : 70
num : 60
num : 90
num : 100
num : 0
총 합계 : 400

파이썬 소스 및 결과입니다. 소스 설명)

 

코드 분석

이 파이썬 코드는 사용자로부터 여러 개의 정수를 입력받아 그 합계를 계산하는 프로그램입니다. 사용자가 0을 입력하면 더 이상 숫자를 입력받지 않고, 지금까지 입력된 모든 숫자의 합계를 출력합니다.

코드를 한 줄씩 살펴보겠습니다.

  1. print('정수를 입력, 0 입력 시 종료됨')
    • 프로그램을 시작하며 사용자에게 어떤 동작을 하는지 안내하는 메시지를 화면에 출력합니다.
  2. total=0
    • 입력받은 숫자들의 합계를 저장할 변수 total을 선언하고 초기값으로 0을 할당합니다.
  3. s = int(input('num : '))
    • input() 함수를 사용하여 사용자에게 'num : ' 메시지를 보여주고 입력을 받습니다.
    • 입력받은 값은 문자열 형태이므로, int() 함수를 사용하여 정수로 변환한 뒤 변수 s에 저장합니다. 이것이 합계 계산의 첫 번째 숫자가 됩니다.
  4. while s != 0:
    • **while**은 반복문으로, 괄호 안의 조건(s != 0)이 **참(True)**인 동안 아래의 코드 블록을 계속해서 실행합니다.
    • 즉, s의 값이 0이 아닌 한 루프는 계속됩니다.
  5. total = total + s
    • 이전까지의 합계(total)에 현재 s에 저장된 숫자를 더한 후, 그 결과를 다시 total 변수에 저장합니다. 이렇게 total은 숫자가 입력될 때마다 누적됩니다.
  6. s = int(input('num : '))
    • 합계 계산 후, 사용자에게 다음 숫자를 입력받습니다. 이 값은 다시 s에 저장되며, while 루프는 새로운 s 값을 가지고 다시 조건(s != 0)을 확인합니다.
    • 만약 사용자가 0을 입력하면, 조건이 **거짓(False)**이 되어 반복문은 종료됩니다.
  7. print(f'총 합계 : {total}')
    • 반복문이 종료된 후, 최종적으로 계산된 total 값을 화면에 출력합니다. f-string을 사용하여 문자열 내에 변수 값을 포함시킵니다.

결과 설명

제공된 결과는 위 코드의 실행 흐름을 정확하게 보여줍니다.

  • num : 80: s에 80이 저장되고, total은 0 + 80 = 80이 됩니다.
  • num : 70: s에 70이 저장되고, total은 80 + 70 = 150이 됩니다.
  • num : 60: s에 60이 저장되고, total은 150 + 60 = 210이 됩니다.
  • num : 90: s에 90이 저장되고, total은 210 + 90 = 300이 됩니다.
  • num : 100: s에 100이 저장되고, total은 300 + 100 = 400이 됩니다.
  • num : 0: s에 0이 저장됩니다. while 조건(s != 0)이 거짓이 되므로 반복문이 종료됩니다.
  • 총 합계 : 400: 반복문 종료 후, 최종적으로 누적된 total 값인 400이 출력됩니다.

이 프로그램은 while 반복문을 사용하여 종료 조건(0 입력)이 될 때까지 유연하게 값을 입력받고 처리하는 구조를 보여주는 좋은 예시입니다.

반응형

콘텐츠 내 자동삽입광고