[코딩테스트] 24. 홀짝에 따라 다른 값 반환하기

편준민's avatar
Mar 31, 2025
[코딩테스트] 24. 홀짝에 따라 다른 값 반환하기

문제

💡
양의 정수 n이 매개변수로 주어질 때, n이 홀수라면 n 이하의 홀수인 모든 양의 정수의 합을 return 하고 n이 짝수라면 n 이하의 짝수인 모든 양의 정수의 제곱의 합을 return 하는 solution 함수를 작성해 주세요.

제한사항

• 1 ≤ n ≤ 100

예시

notion image

풀이

if문을 사용하여 매개변수를 2로 나누어 0으로 떨어지면 짝수이고, 0으로 나누어 떨어지지 않는 다면 홀수가 로직을 타게 만들었다. 홀수 로직에서는 for문의 i1씩 증가가 아니라 중간에 1번 더 넣어서 2씩 증가하여 홀수 일 때는 홀수만 나오게 만들었고, i 값을 계속 더하여 매겨변수 전 까지의 수는 다 더하게 만들었다. 짝수 로직은 마찬가지로 1씩 증가하지 않고 2씩 증가하여 짝수일 때는 짝수만 구할 수 있게하였고, 짝수는 제곱을 해야하므로 i * i 를 해서 answer 변수에 담아서 옮겼다.
#include <stdio.h> #include <stdbool.h> #include <stdlib.h> int solution(int n) { int answer = 0; if (n % 2 != 0) { //홀수 로직 for (int i = 1; i <= n; i++) { answer = answer + i; i++; } } else { //짝수 로직 for (int i = 1; i <= n; i++) { i++; answer = answer + i * i; } } return answer; }
notion image
Share article

YunSeolAn