定义函数isNarcissus(n:int):bool,判断一个数是否是水仙花数,是水仙花数则返回True,否则返回False。在测试函数main()中用循环将三位数的水仙花数筛选出来
时间: 2024-05-12 21:20:08 浏览: 13
水仙花数指的是一个n位数,其各个位上数字的n次方之和等于这个数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
以下是代码实现:
```python
def isNarcissus(n: int) -> bool:
"""
判断一个数是否是水仙花数
"""
num_str = str(n)
n_len = len(num_str)
total = 0
for i in range(n_len):
total += int(num_str[i]) ** n_len
return total == n
def main():
"""
筛选三位数的水仙花数
"""
for i in range(100, 1000):
if isNarcissus(i):
print(i)
if __name__ == '__main__':
main()
```
输出结果为:
```
153
370
371
407
```
相关问题
定义一个判断素数的函数 isPrime(n:int):bool,如果数 n是素数,则返回 True,否则返回 False。
以下是 Python 代码实现:
```python
def isPrime(n: int) -> bool:
if n <= 1:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
```
该函数的思路是:首先判断 n 是否小于等于 1,因为小于等于 1 的数都不是素数;然后从 2 开始遍历到 $\sqrt{n}$,如果在这个范围内找到了一个能够被 n 整除的数,就说明 n 不是素数,返回 False;如果遍历完了整个范围都没有找到能够被 n 整除的数,就说明 n 是素数,返回 True。其中 $\sqrt{n}$ 表示 n 的平方根,需要取整并加上 1。
C语言用函数形式判断一个数是否是水仙花数
好的,这里是一个用C语言实现的判断水仙花数的函数:
```c
#include <stdbool.h>
bool is_narcissistic_number(int n) {
int sum_of_cubes = 0;
int temp = n;
while (temp > 0) {
int digit = temp % 10;
sum_of_cubes += digit * digit * digit;
temp /= 10;
}
return sum_of_cubes == n;
}
```
这个函数会返回一个布尔值,表示传入的整数是否是水仙花数。
你可以在主程序中调用这个函数来判断一个数是否是水仙花数。这里是一个简单的例子:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_narcissistic_number(int n);
int main() {
int n;
printf("请输入一个整数:\n");
scanf("%d", &n);
if (is_narcissistic_number(n)) {
printf("%d 是水仙花数。\n", n);
} else {
printf("%d 不是水仙花数。\n", n);
}
return 0;
}
```
希望这个代码可以帮到你!
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)