사용자로부터 숫자 하나를 입력받아 자연수의 합산 패턴을 화면에 출력해야 하는 경우, 간단한 'for' 반복문만으로도 손쉽게 구현할 수 있습니다.
이번 글에서는 파이썬(Python)을 이용해 1부터 n까지의 자연수를 차례대로 더하면서 각 단계별 합계를 보여주는 프로그램을 만들어 보겠습니다.
예제 코드
my_num = int(input("Enter a number... "))
for j in range(1,my_num+1):
my_list=[]
for i in range(1,j+1):
print(i,sep=" ",end=" ")
if(i<j):
print("+",sep=" ",end=" ")
my_list.append(i)
print("=",sum(my_list))
print()실행 결과
Enter a number... 5 1 = 1 1 + 2 = 3 1 + 2 + 3 = 6 1 + 2 + 3 + 4 = 10 1 + 2 + 3 + 4 + 5 = 15
코드 설명
입력 받기:
input()함수로 사용자에게 숫자를 입력받고,int()를 사용해 정수형으로 변환합니다.외부 반복문: 첫 번째 'for' 반복문이 1부터 입력받은 숫자까지 차례대로 반복됩니다.
빈 리스트 생성: 매 반복마다 빈 리스트
my_list를 초기화하여 현재 단계의 숫자들을 저장할 준비를 합니다.내부 반복문: 두 번째 'for' 반복문이 1부터 현재 외부 반복 값까지 실행되며 각 숫자를 출력합니다.
구분자 처리: 내부 반복 변수가 외부 반복 변수보다 작을 때만 '+' 기호를 출력하여 마지막 숫자 뒤에는 덧셈 기호가 붙지 않도록 합니다.
값 저장: 출력된 숫자들은
append()메서드를 통해 빈 리스트에 순서대로 추가됩니다.합계 계산 및 출력: 한 줄의 출력이 끝나면
sum()함수로 리스트에 담긴 값들의 총합을 구해 '=' 기호와 함께 출력합니다.
이처럼 중첩된 'for' 반복문과 파이썬의 기본 내장 함수들을 조합하면, 복잡한 로직 없이도 직관적인 자연수 합산 패턴을 깔끔하게 출력할 수 있습니다.