Algorithm 하샤드수

하샤드수

algo

입력된 값의 자리수의 합으로 나눴을 경우 나누어지는 경우를 하샤드수라고 한다.

  • 입력된 값의 모든 자리수를 더해서 나눴을때 나누어 떨어지면 true, 아니면 false를 반환하라.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package harshadnumber;

public class HarshadNumber {

public boolean isHarshad(int num) {
int answer = num;
int sum = 0;
boolean flag = true;
while(num > 0) {
sum += num%10;
num = num/10;
}
// 3항연산자를 사용하여서 조금 더 간편하게 사용.
flag = answer%sum == 0 ? true : false;
return flag;
}
public static void main(String[] args) {
HarshadNumber hm = new HarshadNumber();

System.out.println(hm.isHarshad(18));
}
}

Share