Python_하샤드 수

김보람·2022년 4월 15일
0

Python

목록 보기
18/39

<문제>

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

<풀이>

def solution(x):
    y = x
    a =[]
    while x>0:
        a.append(x%10)
        x //= 10
    if y%sum(a) == 0:
        return True 
    else:
        return False

<다른 풀이>

방법 1.
def Harshad(n):
    return n % sum([int(c) for c in str(n)]) == 0
방법 2.
def Harshad(n):
	st = str(n)
    a = 0
    for i in range(len(st)):
        a += int(st[i])

    return True if n%a == 0 else False

<느낀점>

재미가 붙을랑말랑 한다. 아자!!!!!!! 할수 있다!!!!

profile
starry_developer

0개의 댓글