从键盘输入1个百位的整数,比如345,判断时候是水仙花数
时间: 2023-11-27 15:05:23 浏览: 28
水仙花数是指一个$n$位正整数($n\geq 3$),它的每个位上的数字的$n$次幂之和等于它本身。因此,一个百位整数是否是水仙花数,就需要判断其各个位上数字的立方和是否等于该数本身。以下是判断一个百位整数是否是水仙花数的Python代码实现:
```python
num = int(input("请输入一个百位整数:"))
a = num // 100 # 取百位数
b = num % 100 // 10 # 取十位数
c = num % 10 # 取个位数
if a**3 + b**3 + c**3 == num:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
例如,输入345,则输出:
```
345 不是水仙花数
```
相关问题
从键盘输入1个百位的整数,比如345,判断时候是水仙花数,用java实现
水仙花数指一个n位数(n≥3),它的每个位上的数字的m次幂之和等于它本身。例如153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
以下是Java实现代码:
```java
import java.util.Scanner;
public class NarcissisticNumber {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个百位的整数:");
int num = input.nextInt();
// 获取百位、十位和个位数
int hundredsPlace = num / 100;
int tensPlace = (num % 100) / 10;
int onesPlace = num % 10;
// 判断是否为水仙花数
if (num == hundredsPlace * hundredsPlace * hundredsPlace +
tensPlace * tensPlace * tensPlace +
onesPlace * onesPlace * onesPlace) {
System.out.println(num + "是水仙花数");
} else {
System.out.println(num + "不是水仙花数");
}
}
}
```
输入一个百位的整数,程序会自动计算出其百位、十位和个位数,并判断是否是水仙花数。
从键盘输入一个三位整数,判断该数是不是水仙花数
好的,水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。那么,以下是判断一个三位数是否为水仙花数的代码:
```python
num = int(input("请输入一个三位整数:"))
# 分离出百位、十位、个位数字
a = num // 100
b = (num % 100) // 10
c = num % 10
# 判断是否为水仙花数
if a**3 + b**3 + c**3 == num:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
需要注意的是,这个代码中用到了整除运算符`//`和取模运算符`%`,它们可以帮助我们分离出三位数的百位、十位、个位数字。