본문 바로가기
My Image
Algorithm/Programmers

[Algorithm] 하샤드(Harshad) 수

by Lim-Ky 2017. 10. 4.
반응형

Programmers Level_02


하샤드(Harshad) 수


양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다.


Harshad함수는 양의 정수 n을 매개변수로 입력받습니다. 이 n이 하샤드수인지 아닌지 판단하는 함수를 완성하세요.
예를들어 n이 10, 12, 18이면 True를 리턴 11, 13이면 False를 리턴하면 됩니다.



package Programmers_Level02;

public class HarshadNumber {

	public static void main(String[] args) {
		HarshadNumber sn = new HarshadNumber();
		System.out.println(sn.isHarshad(28));

	}
	
	public boolean isHarshad(int num){

		int number = num;
		int sum = 0;
		
		while(num !=0 ){
			sum += num%10;//나머지
			num /= 10;//몫
			
		}
		
		if(number%sum==0)return true;
	

		return false;
	}

}


반응형

'Algorithm > Programmers' 카테고리의 다른 글

[Algorithm] 행렬의 곱셈 (ProductMatrix)  (0) 2017.10.04
[Algorithm] 소수 찾기 (NumberOfPrime )  (0) 2017.10.04
[Algorithm] 2016년  (0) 2017.10.04
[Algorithm] 최솟값 만들기  (0) 2017.10.04
[Algorithm] 콜라츠(Collatz) 추측  (0) 2017.10.04

댓글