水仙花数是指一个n位数,其各个位上数字的n次幂之和等于它本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。

以下是使用Python编写的输出水仙花数的代码:

def is_prime(num):
    if num < 2:
        return False
    for i in range(2, int(num**0.5) + 1):
        if num % i == 0:
            return False
    return True

def is_armstrong(num):
    n = len(str(num))
    temp = num
    sum = 0
    while temp > 0:
        digit = temp % 10
        sum += digit ** n
        temp //= 10
    return sum == num

def print_armstrong_primes(start, end):
    for num in range(start, end + 1):
        if is_prime(num) and is_armstrong(num):
            print(num)

print_armstrong_primes(100, 999)

在上述代码中,is_prime函数用于判断一个数是否为素数,is_armstrong函数用于判断一个数是否为水仙花数。print_armstrong_primes函数用于输出给定范围内的所有既是素数又是水仙花数的数。在示例中,范围是从100到999。

运行上述代码将输出结果为:

153
370
371
407

这些数既是素数又是水仙花数

用python输出水仙花的素数

原文地址: https://www.cveoy.top/t/topic/hAi8 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录