Python 程序判断给定数字是否为哈沙德数
当需要确定给定数字是否为哈沙德数时,可以使用简单的循环和“%”运算符、“+”运算符和“//”运算符。
哈沙德数也称为尼文数。它是一个以整数为底的数字,当它以该底数的值写出时,可以被其数字之和整除。
下面是相同的演示 -
示例
my_num = 134 remaining = sum_val = 0 print("A copy of the number to be checked is being made...") my_num_copy = my_num; while(my_num > 0): remaining = my_num%10; sum_val = sum_val + remaining; my_num = my_num//10; if(my_num_copy % sum_val == 0): print(str(my_num_copy) + " is a Harshad number"); else: print(str(my_num_copy) + " isn't a Harshad number");
输出
A copy of the number to be checked is being made... 134 isn't a Harshad number
解释
- 定义一个数字。
- 另一个 sum 变量被赋予值 0。
- 检查数字是否大于 0,并对其执行模运算。
- 将此结果添加到“sum”中,并将数字再次向下取整除以 10。
- 如果数字和 sum 相除后的余数为 0,则将其视为哈沙德数。
- 否则,不将其视为哈沙德数。
广告