티스토리 뷰
문제
양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다.
예를 들어, 18의 자릿수 합은 1+8 = 9 이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다.
#Harshad
Harshad 함수는 양의 정수 n을 매개변수로 입력받습니다.
이 n이 하샤드수 인지 아닌지 판단하는 함수를 완성하세요.
예를 들어, n이 10, 12, 18이면 True를 리턴 11, 13 이면 False를 리턴하면 됩니다.
풀이(Java)
public class HarshadNumber{ public boolean isHarshad(int num){ int a,b,c,d; int result = 0; if(num/10 >= 10) { a = num/100; b = num%100; c = b/10; d = b%10; result = num%(a+c+d); } else { a = num/10; b = num%10; result = num%(a+b); } if(result == 0) { return true; } return false; } // 아래는 테스트로 출력해 보기 위한 코드입니다. public static void main(String[] args){ HarshadNumber sn = new HarshadNumber(); System.out.println(sn.isHarshad(18)); } }
'Programmers' 카테고리의 다른 글
[Level.2] 콜라즈 추측 (0) | 2017.11.09 |
---|---|
[Level.2] 최솟값 만들기 (0) | 2017.11.09 |
[Level.1] 수박수박수박수박수박수? (0) | 2017.11.08 |
[Level.1] 서울에서 김서방 찾기 (0) | 2017.11.07 |
[Level.1] 스트링을 숫자로 바꾸기 (0) | 2017.11.07 |
댓글