题目:如果某个数的平方的末尾几位数等于这个数本身,那么就称这个数为自守数。例如,5是自守数,5*5=25。编程找出10000以内的所有自守数。
public class Main {
public static void main(String[] args){
for(int i=1;i<10000;i++){
int square=i*i;
String str=String.valueOf(square);
int len1=String.valueOf(i).length(); //平方之前数的长度
int len2=str.length(); //平方之后数的长度
String s=str.substring(len2-len1, len2);
if(s.equals(String.valueOf(i))){
System.out.println(i);
}
}
}
}