import java.util.Scanner;
/*今天学到char int string 类型的转换,还看到string有函数可以取出指定位置的char字符
稍加改动可以改为for循环找出所有水仙花数
缺陷是如果输入的不是三位数会报错*/
public class Flower {
public static void main(String[] args) {
System.out.println("a number 3wei");
Scanner flower = new Scanner(System.in);
String str = flower.nextLine();//将输入的数变成字符串类型
int flo = Integer.parseInt(str);//输入的数转为int
char shi = str.charAt(2);//取出输入数字的十位并变成char
char ge = str.charAt(1);//取出输入数字的个位并变成char
char bai = str.charAt(0);//取出输入数字的百位并变成char
String s = String.valueOf(shi);//把变成char的十位变成string
String g = String.valueOf(ge);//把变成char的个位变成string
String b = String.valueOf(bai);//把变成char的白位变成string
int Shi = Integer.parseInt(s);//把变成string的十位变成int
int Ge = Integer.parseInt(g);//把变成string的个位变成int
int Bai = Integer.parseInt(b);//把变成string的百位变成int
if ((Shi*Shi*Shi+Ge*Ge*Ge+Bai*Bai*Bai)==flo){//判断是否为水仙花数
System.out.println(flo +"flower");
}
else System.out.println("no");
}
}
判断输入的数是否为水仙花数
最新推荐文章于 2022-11-13 19:04:38 发布