重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
package com.Ivan.test1;
成都创新互联-专业网站定制、快速模板网站建设、高性价比长宁网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式长宁网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖长宁地区。费用合理售后完善,十载实体公司更值得信赖。
public class Test {
public static void main(String[] args) {
for (int i = 1; i 10000; i++) {
String str1 = String.valueOf(i);
String multiStr = String.valueOf(i * i);
String last = multiStr.substring(multiStr.length() - str1.length());
if (last.equals(str1)) {
System.out.println(i + "*" + i + "=" + multiStr + "--" + i
+ "是自守数");
}
}
}
}
//////////////////////////////////////////////////////////
///运行结果
1*1=1--1是自守数
5*5=25--5是自守数
6*6=36--6是自守数
25*25=625--25是自守数
76*76=5776--76是自守数
376*376=141376--376是自守数
625*625=390625--625是自守数
9376*9376=87909376--9376是自守数
int i,j;
for(i=5;i=10000;i++){
j=i*i;
if(i10) if(i==j%10)System.out.println(i);
if(i9i100) if(i==j%100)System.out.println(i);
if(i99i1000)if(i==j%1000)System.out.println(i);
if(i999)if(i==j%10000)System.out.println(i);
}
我写的代码,你可以参考和学习下:
/**
* 求自守数,自守数是其平方后尾数等于该数自身的自然数。
* 例如: 25*25=625 76*76=5776
* 找出1-10000之间所有的自守数并输出。
* @param num
*/
public static void getAllSelfNum(int num) {
int i=1;
while (i=num) {
String s=i+"";
// 提高效率,仅处理尾数为0,1,5,6的数字 0*0=0,1*1=1,5*5=25,6*6=36
if (s.endsWith("0")||s.endsWith("1")||s.endsWith("5")||s.endsWith("6")) {
String squareStr=(i*i)+"";
if (squareStr.endsWith(s)) {
System.out.println("Self Number: "+i);
}
}
i++;
}
}
调用:getAllSelfNum(10000);
输出结果:
Self Number: 1
Self Number: 5
Self Number: 6
Self Number: 25
Self Number: 76
Self Number: 376
Self Number: 625
Self Number: 9376