티스토리 뷰

문제 설명

정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요.

 

제한사항

0< n ≤1000

 

-짝수 구하는 법, n이하의 짝수 구하는 법 구글링하다가 답답하고 이해 안돼서 갓지피티의 힘을 빌렸다. 이렇게 공부하지 말라고 했는데.. 개념을 모르는데 어떡해요...

function solution(n) {
    let sum = 0; // 짝수의 합을 저장할 변수, 처음에는 0으로 시작합니다.
    
    for (let i = 1; i <= n; i++) { // 1부터 n까지 모든 숫자를 확인합니다.
        if (i % 2 === 0) { // i가 짝수인지 확인합니다.
            sum += i; // i가 짝수라면 sum에 더해줍니다.
        }
    }
    
    return sum; // 모든 짝수를 더한 결과를 반환합니다.
}

 

-하나하나 살펴보자. 

 

1. 'function solution(n)' : 'solution'이라는 함수를 정의한다. 이 함수는 'n'이라는 숫자를 입력으로 받는다. 

2. 'let sum = 0;' 'sum'이라는 변수를 선언한다. 이 변수는 짝수를 더한 합계를 저장하기 위해 사용된다. 처음에는 0으로 시작한다. 

 *let - 변수를 선언하는 데 사용하는 키워드. 'let'을 사용하여 선언된 변수는 블록('{}')스코프를 가지며, 이는 변수가 선언된 블록 내부에서만 접근 가능하다는 의미. 

3. 'for (let i = 1; i <= n; i++)' 

  *for 반복문은 특정 코드를 여러 번 반복 실행할 때 사용된다. for 반복문은 다음과 같은 형태를 가진다. 

for (초기식;조건식;증감식 {
 //반복해서 실행할 코드
 }

 

  - 3-1. 각 부분의 역할

    초기식 : 반복문이 시작될 때 한 번만 실행되는 코드. 보통 반복을 제어할 변수를 초기화하는 데 사용된다. 

    조건식 : 각 반복이 시작될 때마다 평가되는 표현식. 이 조건식이 'true'이면 반복문 안의 코드가 실행되고, 'false'이면 반복문이 종료된다.

    증감식 : 반복문 안의 코드가 실행된 후에 실행되는 코드. 보통 반복을 제어할 변수를 증가시키거나 감소시키는 데 사용된다. 

  >예제

for (let i = 0; i < 5; i++) {
    console.log(i);
}

   - 이 코드를 실행하면, 'console.log(i)'가 5번 실행되고 각 반복마다 'i'의 값이 출력된다. 출력 결과는 다음과 같다.

0
1
2
3
4

   - 각 부분을 자세히 설명하면,

  3-3-1. 초기식 : ('let i = 0;')

    : 반복문이 시작될 때 'i'라는 변수를 선언하고 '0'으로 초기화한다. 

더보기

*왜 n이 아니라 i를 쓰는 걸까?

 예제의 전체 코드를 살펴 보면, 

function solution(n) {
    let sum = 0; // 짝수를 더할 변수 sum을 0으로 초기화합니다.
    for (let i = 0; i <= n; i++) { // i가 0부터 n까지 증가하며 반복합니다.
        if (i % 2 === 0) { // i가 짝수인지 확인합니다.
            sum += i; // i가 짝수라면 sum에 더해줍니다.
        }
    }
    return sum; // 모든 짝수를 더한 값을 반환합니다.
}

이 코드에서는 반복문을 사용하여 '0'부터 'n'까지 모든 숫자를 확인한다. 'i'는 <현재 반복문이 처리 중인 숫자>를 나타낸다. 

 

각 변수의 역할

 - 'n' : 함수의 매개변수로, 주어진 숫자. 우리는 이 숫자 이하의 모든 짝수를 더하고 싶다. 

 - 'i' : 반복문의 변수로, '0'부터 'n'까지의 모든 숫자를 차례로 나타낸다. 

 - 'sum' : 짝수들을 모두 더한 값을 저장할 변수이다. 

  3-3-2. 조건식 ('i<5';')

    : 반복이 시작될 때마다 'i<5'가 참인지 거짓인지 평가한다. 'i'가 5보다 작으면 조건식이 참('true')가 되어 반복문 안의 코드가 실행된다. 'i'가 5 이상이 되면 조건식이 거짓('false')이 되어 반복문이 종료된다. 

 

  3-3-3. 증감식 ('i++')

    : 반복문 안의 코드가 실행된 후에 'i'를 1씩 증가시킨다. 이는 'i = i+1'과 동일하다. 

 

예제 설명 

 - 처음에 'i'는 '0'으로 초기화된다.

 - 'i < 5'가 참이므로 'console.log(i)'가 실행되어 '0'이 출력된다.

 - 'i++'에 의해 'i'는 '1'이 된다. 

 - 다시 'i < 5'가 평가되고, 참이므로 'console.log(i)'가 실행되어 '1'이 출력된다. 

 - 이 과정이 'i'가 '5'가 될 때까지 반복된다. 

 - 'i'가 '5'가 되면 'i < 5' 가 거짓이 되어 반복문이 종료된다. 

 

더보기

연산자에 대한 추가 설명, ++ , +=

 

 1. ++

 - i++ 는 'i = i +1'과 동일한 역할을 한다. 즉, 'i'를 1씩 증가시키는 역할을 한다. 

 

2. +=

 - 'sum += i;'는 'sum = sum + i '와 동일하다. 즉, '+='연산자는 프로그래밍에서 덧셈과 할당을 한 번에 수행하고, 'sum'에 현재 'i'값을 더한 후, 그 결과를 다시 'sum'에 저장한다. 

즉, for 반복문은 'i'라는 변수를 1부터 'n'까지 증가시키면서 반복한다. 예를 들어 'n'이 5라면 'i'는 1,2,3,4,5가 된다. 

 

4. 'if (i % 2 === 0)' : 'i'를 2로 나눈 나머지가 0인지 확인한다.('%'연산자는 나머지를 확인한다.) 'i % 2 === 0' 이 참이라면 'i'는 짝수이다. 예를 들어 2%2는 0이고, 4%2도 0이다. 

 

5. 'sum += i;' 'i'가 짝수라면, 'sum'에 'i'를 더한다. 예를 들어 'sum'이 0이고 'i'가 2라면, 'sum'은 이제 2가 된다. 다음에 'i'가 4라면, 'sum'은 2+4가 되어 6이 된다. 

 

6. 'return sum;' : 반복문이 끝난 후, 'sum'을 반환한다. 이것이 'n'이하의 모든 짝수를 더한 값이다. 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/02   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
글 보관함