짝수의 합 문제 / for문

GOYENA·2025년 3월 27일

algorithm

목록 보기
7/12

짝수의 합 문제

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

https://school.programmers.co.kr/learn/courses/30/lessons/120831

해결하기 위해 궁금한것

  • 짝수를 골라내기 위해 나머지가 0인 수를 찾는 방법 말고 다른 방법은 없나?!
class Solution {
    public int solution(int n) {
        int answer = 0;
        for(int i=1; i<=n; i++){
            if(i%2==0){
               answer+=i;
             }
        }
        return answer;
    }
}

✏️for문

for문 반복문의 하나

  • 특정조건이 만족될 때까지 코드 블록을 반복 실행
  • 주로 정해진 횟수만큼 반복하거나 범위 내에서 작업을 수행할 때 사용

for문의 구조

  • for( 초기식, 조건식, 증감식 ){ 반복할 코드 }
    - 초기식 : 반복에 사용할 변수를 초기화.
    - 조건식 : 조건이 true일 때 반복을 계속하고, false이면 반복을 멈춤.
    - 증감식 : 반복이 끝날 때마다 실행, 변수 값을 증가 또는 감소시키는 부분.
    for문의 처리 순서
    - 초기식 → 조건식 → 반복문 → 증감식 → 조건식 ...

❕성공한 코드

class Solution {
    public int solution(int n) {
        int answer = 0;
        for(int i=2; i<=n;i+=2){
                answer+= i;
        }   
        return answer;
    }
}

for문을 이용

  1. 정수 n은 0보다 크다.
    그러므로 짝수가 될 수 있는 최솟값은 2.
    ∴ i는 2부터 시작
    초기식 : int i=2;

  2. 정수 n을 포함해서 더해야 한다.
    ∴ i가 n보다 같거나 작을 때 참, i가 n보다 클 때 거짓(반복 멈춤)
    조건식 : i <= n;

  3. 짝수만 출력해야 함.
    ∴ i는 2씩 증가.
    증감식 : i+=2

  4. 변수 answer에 조건식이 거짓이 될 때까지 i를 더해나감.

  5. answer 리턴

profile
헤헷

0개의 댓글