알고리즘, 코딩테스트

[프로그래머스/ 코딩테스트 연습문제] 하샤드 수

jy3574 2024. 11. 1. 15:26

Q. 하샤드 수

A.

class Solution {
    public boolean solution(int x) {
        boolean answer = true;
        int xSum = 0; //각 자리수의 합을 구해서 넣을 변수를 선언
        int realX = x; //x를 이용해 각 자리수의 합을 구했을 시, x의 값이 바뀌기 때문에 진짜 x의 값을 변수에 넣기
        
//while 문을 사용해 x의 각 자리수 합을 구해서 xSum에 대입
        while(x>0){
            xSum += (x % 10);
            x /= 10;
        }
        
//구한 xSum의 값을 사용해 realX를 xSum으로 나눈 나머지 값이 0이 아닐시 flase를 반환
        if((realX % xSum) != 0){
            answer = false;
        }
        return answer;
    }
}