实现统计同构数关键算法。编写程序输出 2~99 之间的同构数。同构数是指这个数为该数平方的尾数,例如 5 的平 方为 25,6 的平方为 36,25 的平方为 625,则 5、6、25 都为同构数。
注意:调用带有一个输入参数的函数(或方法)实现,此函数(或方法)用于判断某个整数
是否为同构数,输入参数为一个整型参数,返回值为布尔型(是否为同构数)
public class week3 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("输入一个整数,判断是否是同构数:");
if(isTGNumber(in.nextInt())){
System.out.println("这是一个同构数");
}else{
System.out.println("这不是一个同构数");
}
}
//判断是否为同构数
public static boolean isTGNumber(int number){
int numberPow = (int) Math.pow(number, 2);//该数的平方
//获取该数的个位数
System.out.println(number);
int numg = number / 1 % 10;//获取该数的个位数
int nums = number / 10 % 10;//获取该数的十位数
System.out.println(numberPow);
int g = numberPow / 1 % 10;//获取开平方后的个位数
int s = numberPow / 10 % 10;//获取开平方后的十位数
//判断个位和十位是否相同
//如果输入的是一位数
if(nums == 0){
//只判断个位,不判断十位数
if(numg == g){
return true;
}
//输入的是两位数
}else if(numg == g && nums == s){
return true;
}
return false;
}
}