본문 바로가기

Univ/Python Programming

[문제 08]숫자의 합 구하기 - Python 풀이

정수 N이 주어지면 1부터 N까지의 모든 자연수의 합을 계산하는 프로그램을 작성한다.

입력 예시

첫째 줄에 정수 N이 주어진다.

출력 예시

1부터 N까지의 합을 "Sum: 값" 형식으로 출력한다.

예제 테스트케이스

예제 1

입력 예시
출력 예시
10
Sum: 55

예제 2

입력 예시
출력 예시
1
Sum: 1

 

 


정답 코드

N = int(input())

total = sum(range(1, N + 1))

print(f"Sum: {total}")

문법 설명

1. int(input())

  • 입력을 받아 정수로 변환

2. range(1, N + 1)

  • 1부터 N까지의 숫자 생성
  • range는 끝값을 포함하지 않으므로 N + 1 필요

3. sum()

  • iterable의 모든 값을 더함
sum(range(1, N + 1))

4. print(f"...")

  • f-string으로 값 출력

실수 포인트 (핵심만)

1. range(1, N)로 작성하는 경우

range(1, N)  # 잘못된 형태
  • N이 포함되지 않음
    → 합이 부족하게 계산됨

2. 출력 형식 틀림

SUM: 55
Sum : 55
  • 문제는 "Sum: 값" 정확히 요구
    → 공백, 대소문자 틀리면 오답

3. N=0 또는 음수 고려 안 하는 경우

  • 문제에서 자연수 기준이면 보통 N ≥ 1
  • 조건 확인 없이 작성하면 오답 가능

한 줄 정리

range 끝값 + 출력 형식 정확히 맞추기