[프로그래머스 | Lv.1] 하샤드 수

2024. 3. 8. 16:19·Data structure & Algorithm/프로그래머스

 

문제 설명

 

양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다.

예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다.

자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요.

 

 

제한 사항

 

x는 1 이상, 10000 이하인 정수입니다.

 

 

입출력 예

 

x return
10 true
12 true
11 false
13 false

 

입출력 예 설명

 

입출력 예 #1
10의 모든 자릿수의 합은 1입니다.

10은 1로 나누어 떨어지므로 10은 하샤드 수입니다.

 

입출력 예 #2
12의 모든 자릿수의 합은 3입니다.

12는 3으로 나누어 떨어지므로 12는 하샤드 수입니다.

 

입출력 예 #2
11의 모든 자릿수의 합은 2입니다.

11은 2로 나누어 떨어지지 않으므로 11는 하샤드 수가 아닙니다.

 

입출력 예 #2
13의 모든 자릿수의 합은 4입니다.

13은 4로 나누어 떨어지지 않으므로 13은 하샤드 수가 아닙니다.

 

 

 

나의 풀이

func solution(_ x:Int) -> Bool {
    var tempX = x
    var digitSumX = 0
    
    while tempX > 0 {
        digitSumX += tempX % 10
        tempX /= 10
    }
    
    return x % digitSumX == 0 ? true : false
}

 

 

 

'Data structure & Algorithm > 프로그래머스' 카테고리의 다른 글

[프로그래머스 | Lv.1] 음양 더하기  (0) 2024.03.10
[프로그래머스 | Lv.1] 두 정수 사이의 합  (0) 2024.03.10
[프로그래머스 | Lv.1] 정수 내림차순으로 배치하기  (0) 2024.03.08
[프로그래머스 | Lv.1] 정수 제곱근 판별  (0) 2024.03.08
[프로그래머스 | Lv.1] 문자열 내 p와 y의 개수  (0) 2024.03.07
'Data structure & Algorithm/프로그래머스' 카테고리의 다른 글
  • [프로그래머스 | Lv.1] 음양 더하기
  • [프로그래머스 | Lv.1] 두 정수 사이의 합
  • [프로그래머스 | Lv.1] 정수 내림차순으로 배치하기
  • [프로그래머스 | Lv.1] 정수 제곱근 판별
ohhoooo
ohhoooo
  • ohhoooo
    ohhoooo
    ohhoooo
  • 전체
    오늘
    어제
    • 전체 글 (84)
      • iOS (1)
      • Swift (1)
      • Data structure & Algorithm (67)
        • 프로그래머스 (67)
      • 기타 (15)
        • TIL (2)
        • Android (13)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
ohhoooo
[프로그래머스 | Lv.1] 하샤드 수
상단으로

티스토리툴바