본문 바로가기
알고리즘/CodeUp PS

[CodeUp][Python] 1259번 : 1부터 n까지 중 짝수의 합 구하기

by 빛밤하늘 2021. 9. 3.
반응형

밑의 링크는 CodeUp에서의 문제 링크입니다.

문제는 링크를 통해서 직접 봐주시길 바랍니다.

 

1부터 n까지 중 짝수의 합 구하기

1부터 n까지의 수 중 짝수의 합을 구하시오.

codeup.kr

 

 

 

주의해야 할 점

1. readline과 int나 float를 사용하는 입력 방식

readline을 사용해서 입력할 때는 맨 끝에 \n이 붙어서 입력됩니다.

하지만, 입력한 값을 int나 float으로 처리해 정수, 실수형으로 만들어 줄 때는 

굳이 \n을 떼기 위해 rstrip을 사용할 필요가 없습니다.

숫자 형태를 만들어줄 때 자동으로 사라집니다.

num = int(sys.stdin.readline())


2. 홀수, 짝수를 판별하는 방법

이 문제에서처럼 어떤 수가 또 홀수인지 짝수인지를 판별할 때는

나머지를 반환하는 연산자 '%'를 사용합니다.

숫자를 2로 나누었을 때 나머지가 1이라면 홀수, 나머지가 0이라면 짝수인 성질을 이용하는 것입니다.

나머지 연산자는 이 기법뿐만 아니라 정말 많이 쓰이니 꼭 기억합시다.

 

 

예제 설명

1. 첫 번째 예제

- 입력

5

 

- 출력

6

 

- 설명

입력한 자연수 n은 5입니다.

1부터 5까지의 짝수들은 2, 4이므로, 이들의 합은 2+4 = 6입니다.

따라서 6을 출력합니다.

 

 

생각한 풀이 과정

자연수인 n을 입력합니다.

1부터 n까지의 짝수의 합을 저장할 변수 even_sum을 선언하고, 0으로 초기화합니다.

 

1부터 n까지 반복하는 반복문을 만들어줍니다.

현재 숫자가 짝수라면, 즉, 현재 숫자를 2로 나누었을 때 나머지가 0이라면, even_sum에 현재 숫자를 더해줍니다.

 

n까지 반복하고 나면, 1부터 n까지의 짝수의 합인 even_sum의 값을 출력합니다.

 

 

제출한 파이썬 코드

# readline을 사용하기 위해 import합니다.
from sys import stdin


# 자연수 n을 입력합니다.
# int형으로 변환합니다.
n = int(stdin.readline())
# 1부터 n까지의 짝수의 합을 저장할 변수를 선언합니다.
# 0으로 초기화합니다.
even_sum = 0

# 1부터 n까지 반복해봅니다.
for num in range(1, n + 1):
    # 현재 숫자가 짝수라면, 즉, 현재 숫자를 2로 나누었을 때 나머지가 0이라면
    if num % 2 == 0:
        # even_sum에 현재 숫자를 더해줍니다.
        even_sum += num

# 1부터 n까지의 짝수의 합인 even_sum의 값을 출력합니다.
print(even_sum)

 

 

제출 결과

CodeUp 1259번 : 1부터 n까지 중 짝수의 합 구하기에서 코드 제출 결과
CodeUp 1259번 : 1부터 n까지 중 짝수의 합 구하기에서 코드 제출 결과

 

 

 

※ 궁금한 부분, 이상한 점 및 오타는 댓글에 부탁드립니다.

※ 더 효율적이고 빠른 정답을 환영합니다.

※ 공감 버튼과 구독 버튼도 잊지 말고 꾹 눌러주시면 감사하겠습니다~👍👍

반응형

댓글