[프로그래머스_Lv1.] 하샤드 수

문제 설명

양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요.

제한 사항

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

풀이

def solution(x):
    sum=0                       # 자릿수 총합
    int_x=str(x)                # 자릿수만큼 반복하기 위해 x를 문자열로 형변환한다.    
    for i in range(len(int_x)): # 자릿수를 모두 더한다.
        sum+=int(int_x[i])      # 자릿수를 더하기 위해 형변환된 x를 다시 int로 형변환한다.       
    if x%sum==0: 
        return True
    else:
        return False

좋은 웹페이지 즐겨찾기