[알고리즘] Swift 짝수의 합

이유진·2024년 2월 28일
0

알고리즘

목록 보기
9/32

문제 설명

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


제한사항

0 < n ≤ 1000


입출력 예

nresult
1030
46

입출력 예 설명

입출력 예 #1

  • n이 10이므로 2 + 4 + 6 + 8 + 10 = 30을 return 합니다.

입출력 예 #2

  • n이 4이므로 2 + 4 = 6을 return 합니다.

Solution

import Foundation

func solution(_ n:Int) -> Int {

    var sum = 0
  
    for i in 1...n {
        if i % 2 == 0 {
        sum += i
        }
   }
    return sum
}

Commentary

import Foundation

func sol(_ n:Int) -> Int {
    
    //값을 담을 sum 변수선언
    var sum = 0
    
    //for ~ in 구문 사용
    /*
     for <루프 상수> in <순회 대상> {
     <실행할 구문>
     }
    */
    for i in 1...n {
        if i % 2 == 0 {
        sum += i
        }
    /*
     짝수의 합 구하기 위해
     1.if 구문 사용해 1부터 n까지의 수 중
     2로 나눴을 때 몫이 0인 수를 찾는다.
     2.이 조건을 충족하면 정의해둔 sum변수 0에
     앞선 루프에서 도출된 변수를 더한다.
     3.이 과정이 for ~ in 구문 안에서
     루핑되면 결과값을 도출할 수 있다.
     */
   }
    return sum
}

Another Solution / Commentary

//! 다른 사람의 풀이 !

 import Foundation
 
 func solution(_ n:Int) -> Int {
    var sum = 0
    for i in 1...n where i % 2 == 0 {
        sum += i
    }
    return sum
 }
 
/*
	if문이 아닌 where절 사용해 더 간결한 코드를 짰다.
	풀이 보고 서칭을 통해 알게 된 where절의 용도
	1.Swift의 패턴들과 결합하여 조건을 추가할 수 있다.
	2.타입에 대한 제약을 추가할 수 있다.
*/

0개의 댓글