코딩테스트 & 문제 풀이

[C]백준_8393 : 합

Hicecream 2023. 7. 11. 00:05

2022년 9월 15일에 작성됨

 

https://www.acmicpc.net/problem/8393

 

8393번: 합

n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오.

www.acmicpc.net

 

 

문제 분석

n을 입력하면, 1부터 n까지 합을 출력하는 문제이다.

 

 

소스 코드 (⭕)

#include <stdio.h>

int main()
{
    int n, hap = 0;  // 누적합 담을 변수 0으로 초기화

    scanf("%d", &n);

    for (int i = n; i >= 0; i--) {
        hap += i;
    }

    printf("%d\n", hap);

    return 0;
}

 

코드 분석

1. 정수형 변수 n과 누적합을 변수 hap을 정의한다.
    (누적합을 담을 변수는 반드시 0으로 초기화 해준다!!)


2. scanf로 n 값을 입력 받는다.


3. for 문을 이용하여, i는 n부터 0이 될 때까지 -1씩 해주며 hap에 i 값을 더해주며 누적합을 구한다.
    (hap = n + (n-1) + (n-2) + ... + 1 + 0)


4. 마지막으로 printf로 hap의 값을 출력해준다.

 

 

 

end

0을 굳이 더해줄 필요는 없으니 반복문의 조건식을 i > 0으로 해주는 것이 더 좋을것 같다.