Check Harshad Number

Check whether a number is a Harshad (Niven) number (divisible by sum of its digits).

PythonBeginner
Python
# Program to check Harshad (Niven) number

num = int(input("Enter an integer: "))

digit_sum = sum(int(d) for d in str(num))

if digit_sum != 0 and num % digit_sum == 0:
    print(num, "is a Harshad number")
else:
    print(num, "is not a Harshad number")

Output

Enter an integer: 18
18 is a Harshad number

A Harshad number is divisible by the sum of its digits. We compute digit sum using a comprehension and check divisibility with modulo.