判断水仙花数(字符串实现)python
时间: 2023-09-13 16:01:03 浏览: 83
水仙花数是指一个三位数,它的各个位上的数字的立方和等于它本身。要判断一个数是否为水仙花数,可以通过以下步骤实现:
1. 将输入的数转换为字符串。
2. 判断该字符串的长度是否为3,如果不是,则该数不是三位数,直接输出不是水仙花数。
3. 使用for循环遍历字符串中的每个字符:
a. 将字符转换为数字,并将其立方值累加到变量sum中。
4. 将变量sum与原始输入的数进行比较:
a. 如果sum等于输入的数,则输出是水仙花数;
b. 否则,输出不是水仙花数。
下面是一个用python语言实现的代码示例:
def is_narcissistic_number(num):
num_str = str(num)
if len(num_str) != 3:
return "不是水仙花数"
sum = 0
for digit in num_str:
sum += int(digit) ** 3
if sum == num:
return "是水仙花数"
else:
return "不是水仙花数"
例如,对于数153,调用is_narcissistic_number(153),输出为"是水仙花数"。对于数123,调用is_narcissistic_number(123),输出为"不是水仙花数"。
相关问题
python用字符串求水仙花数
以下是Python用字符串求水仙花数的代码:
```python
narcissistic_nums = []
for num in range(100, 1000):
digits = str(num)
if num == sum([int(d)**3 for d in digits]):
narcissistic_nums.append(num)
print(narcissistic_nums)
```
通过循环遍历100到999的整数,将每个整数转换为字符串,然后使用字符串切片或循环遍历的方式将每个数字单独取出,再使用列表解析式求列表中每个数字的立方和,判断是否等于原数,如果是,则将该数添加到水仙花数列表中。最后打印输出水仙花数列表。
判断水仙花数python
水仙花数是指一个n位数(n≥3),它的每个位上的数字的n次幂之和等于它本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
在Python中,可以使用以下代码来判断一个数是否为水仙花数:
```python
def is_armstrong_number(num):
# 将数字转换为字符串,以便逐位计算
num_str = str(num)
# 获取数字的位数
n = len(num_str)
# 计算每个位上的数字的n次幂之和
sum_of_powers = sum(int(digit) ** n for digit in num_str)
# 判断是否为水仙花数
if sum_of_powers == num:
return True
else:
return False
# 测试
num = 153
if is_armstrong_number(num):
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
相关推荐
![md](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.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)