/**
* 什么是“水仙花数”
* ①水仙花数是一个三位数
* ②水仙花数的个位、十位、百位的数字立方和等于原数
*///获取所有的水仙数privatestaticvoidgetAllSxs(){int count =0;for(int i =100; i <1000; i++){int b =Integer.valueOf(String.valueOf(i).substring(0,1));int s =Integer.valueOf(String.valueOf(i).substring(1,2));int g =Integer.valueOf(String.valueOf(i).substring(2,3));//Math.pow(b,3) b的三次幂if(Math.pow(b,3)+Math.pow(s,3)+Math.pow(g,3)==i){
count++;}}System.out.println("所有水仙花数为:"+count);}//判断输入的数是否为水仙数privatestaticvoidifSxs(){boolean flag =true;Scanner scanner =newScanner(System.in);int i =0;while(flag){System.out.println("请输入三位数的数字!");
i = scanner.nextInt();if(String.valueOf(i).length()==3){//把被变为字符串截取后的整数变回整数int b =Integer.valueOf(String.valueOf(i).substring(0,1));int s =Integer.valueOf(String.valueOf(i).substring(1,2));int g =Integer.valueOf(String.valueOf(i).substring(2,3));if(Math.pow(b,3)+Math.pow(s,3)+Math.pow(g,3)!=i){System.out.println("非水仙花数!");}else{System.out.println("水仙花数!");}System.out.println("是否继续?y/n");String pd = scanner.next();if(pd.equals("y")){
flag =true;}else{
flag =false;return;}}else{
flag =true;}}}