你们好,最近小未来发现有诸多的小伙伴们对于java水仙花数编程题,java水仙花数编程这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。
1、首先先要知道什么是水仙花数:知道水仙花数的规则:所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数
2、例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
3、首先看到这个问题最开始我也没有思路,后来看到了水仙花数问题的流程图,
4、就想到了要线分离变量。
5、分离变量的方法
6、判断一个三位数,其各位数字立方和等于该数
7、整体代码:
8、package Apri8;
9、import java.util.*;
10、public class waterFlower {
11、 private static int i1;
12、 private static int i2;
13、 private static int i3;
14、 //这个方法范围时能是100~1000,因为我只定义了三个变量,只能分离三位数!
15、 public static void flower(int bounder){
16、
17、 for(int i=100;i<bounder;i++){
18、 int num1 = i / 100;
19、 int num2 = i % 100 / 10;
20、 int num3 = i % 10;
21、 int sum = num1*num1*num1 + num2*num2*num2 + num3*num3*num3;
22、 if(i == sum){
23、 System.out.print(i+" ");
24、 }
25、 }
26、 }
27、//判断是否是水仙花数
28、
29、
30、 public static void judge(int num){
31、 i1 = num / 100;
32、 i2 = num % 100 / 10;
33、 i3 = num % 10;
34、 int sum = i1*i1*i1+i2*i2*i2+i3*i3*i3;
35、 if(num == sum){
36、 System.out.println(num + " 是水仙花数!");
37、 }else{
38、 System.out.println(num+" 不是水仙花数!");
39、 }
40、
41、 }
42、
43、 public static void main(String[] args) {
44、//键盘输入
45、 Scanner sc = new Scanner(System.in);
46、 System.out.print("请输入范围 100 ~ ");
47、 int input1 = sc.nextInt();//你要输入的范围
48、 flower(input1);//打印水仙花数方法
49、 System.out.println("\n请输入一个数 三位数: ");
50、 int input2 = sc.nextInt();
51、 judge(input2);//判断水仙花数方法
52、 sc.close();
53、 }
54、}
55、代码运行结果如下:
以上就是java水仙花数编程这篇文章的一些介绍,希望对大家有所帮助。