#includestdio.h
我们提供的服务有:做网站、成都做网站、微信公众号开发、网站优化、网站认证、汶上ssl等。为上千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的汶上网站制作公司
int main()
{int i,k,pf;
for(int i=1;i=10000;i++)
{int k=i;
pf=k*k;
while(k!=0)
{if(pf%10!=k%10)break;
k=k/10;
pf=pf/10;
}
if(k==0)
printf("%d\n",i);
}
return 0;
}
package com.Ivan.test1;
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