在 Python 中检查一个数字是否是霓虹灯数(Neon Number)

如果一个数字的平方的各位数之和等于给定数字,那么给定数字是霓虹灯数。

例如:N = 9

数字 N 的平方:9**2 = 81,8 + 1 = 9

方法1:

算法:

  • 自定义函数 checkNeon(x)。

  • 计算给定数字的平方,将其存储在另一个变量 squar_num。

  • 使用 while 循环,利用取余、整除运算,计算各位数字之和 sum_digits。

  • 自定义函数返回 sum_digits == x 结果。

  • 将待检测数字存储在变量 num。

  • 使用 If 条件语句,用自定义函数检查给定的数字。

  • 如果语句为 True,则输出给定的数字是是一个霓虹灯数。

  • 否则,输出给定的数字不是一个霓虹灯数。

def checkNeon (x):
    squar_num = x * x
    sum_digits = 0
    while squar_num != 0 :
        sum_digits = sum_digits + squar_num % 10
        squar_num = squar_num // 10
    return sum_digits == x
num = 9
if checkNeon(num):
    print(num,'是一个霓虹灯数。')
else:
    print(num,'不是一个霓虹灯数。')

方法2:

算法:

  • 将待检测数字存储在变量 num。

  • 计算给定数字的平方,将其存储在另一个变量 squar_num。

  • 使用 list(),int(),map(),str() 函数将 squar_num 转换为数字列表。

  • 使用 sum() 函数计算列表的数字总和。

  • 使用 If 条件语句检查此总和是否等于给定的数字。

  • 如果语句为 True,则输出给定的数字是是一个霓虹灯数。

  • 否则,输出给定的数字不是一个霓虹灯数。

num = 9
squar_num = num ** 2
lst_num = list(map(int,str(num)))
if num == sum(lst_num):
    print(num,'是一个霓虹灯数。')
else:
    print(num,'不是一个霓虹灯数。')

文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈。