프로그래머스 (Swift)/lv 1

[lv1] 하샤드 수

은더기 2024. 10. 2. 16:48

문제

 

내 정답 코드

func solution(_ x:Int) -> Bool {
    let strX = String(x)
    var sum = 0
    
    strX.map { sum += Int(String($0))! }
    
    return x % sum == 0 ? true : false
}

 

#

1. 정수로 받은 x를 문자열로 바꾼다.

2. 문자열을 탐색하여 각 문자를 정수로 바꿔 sum에 더해준다.

3. x를 sum으로 나눠 나온 나머지 값이 0이면 true를, 0이 아니면 false를 반환한다.


배운 기술