用java在控制台输出所有的“水仙花数”,并统计有多少个水仙花数。所谓的水仙花数是一个三位数,其各位 数字的立方和等于该数本身
时间: 2023-06-02 20:02:17 浏览: 149
。代码如下:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int count = 0; // 计数器,记录水仙花数的个数
for (int i = 100; i < 1000; i++) {
int a = i / 100; // 百位数
int b = i / 10 % 10; // 十位数
int c = i % 10; // 个位数
if (i == a * a * a + b * b * b + c * c * c) {
System.out.println(i);
count++;
}
}
System.out.println("共有" + count + "个水仙花数");
}
}
```
输出结果如下:
```
153
370
371
407
共有4个水仙花数
```
相关问题
Java在控制台输出所有的水仙花数
水仙花数是指一个n位数,其各位数字的n次方之和等于该数本身。例如,153是一个3位数,且153 = 1^3 + 5^3 + 3^3。
在Java中,要输出所有的三位水仙花数,可以通过以下步骤实现:
1. 从100到999(三位数的范围)遍历每个数。
2. 对于每个数,获取其百位、十位和个位上的数字。
3. 计算每个数位的立方和。
4. 判断立方和是否等于原始数,如果相等,则该数为水仙花数,并输出。
下面是一个简单的Java程序示例,用于在控制台输出所有的三位水仙花数:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
System.out.println("所有的三位水仙花数如下:");
for (int i = 100; i < 1000; i++) {
int ge = i % 10; // 个位数
int shi = i / 10 % 10; // 十位数
int bai = i / 100; // 百位数
if (Math.pow(ge, 3) + Math.pow(shi, 3) + Math.pow(bai, 3) == i) {
System.out.println(i);
}
}
}
}
```
运行上述代码,控制台将输出所有的三位水仙花数。
java在控制台输出所有的“水仙花数”,并统计有多少个水仙花数。所谓的水仙花数是一个三位数,其各位 数字的立方和等于该数本身,例如153 = 1 **1 1 + 5 * 5 *5+ 3 * 3 *3
以下是 Java 代码,可实现控制台输出所有的水仙花数,并统计它们的个数:
```java
class Main {
public static void main(String[] args) {
int count = 0;
for(int i = 100; i <= 999; i++) {
int a = i / 100;
int b = (i / 10) % 10;
int c = i % 10;
if(i == a*a*a + b*b*b + c*c*c) {
System.out.println(i);
count++;
}
}
System.out.println("共有 " + count + " 个水仙花数。");
}
}
```
这段代码首先定义了一个变量 `count`,用于记录水仙花数出现的次数。接着,使用 for 循环遍历所有的三位数,将它们拆分成各个位上的数字,并判断它们是否符合水仙花数的定义。如果是水仙花数,则在控制台输出它,并将计数器 `count` 加一。最后,输出水仙花数的总数。
阅读全文