首页 > 其他分享 >自守数

自守数

时间:2023-05-09 10:55:26浏览次数:22  
标签:10 number% number 自守数 printf mul

自然语言解决问题:根据自守数的定义,求解本题的关键是知道当前所求自然数的位数,以及该数平方的尾数与被乘数、乘数之间的关系

流程图:

 

具体代码:

#include<stdio.h>
int main(){

long mul,number,k,a,b;
printf("It exists following automorphic nmbers small than 100000:\n");
for(number=0;number<100000;number++){

for(mul=number,k=1;(mul/=10)>0;k*=10);
a=k*10;
mul=0;
b=10;
while(k>0)
{
mul=(mul+(number%(k*10))*(number%b-number%(b/10)))%a;
k/=10;b*=10;
}
if(number==mul)
printf("%1d ",number);
}
printf("\n");
return 0;
}

标签:10,number%,number,自守数,printf,mul
From: https://www.cnblogs.com/Mini-Q/p/17384173.html

相关文章

  • 自守数
    自守数:自守数是指一个数的平方的尾数等于该数自身的自然数。例如:5²=25  25²=625  76²=5776  9376²=87909376求10000以内的自守数。解题思路:for循环遍历1~10000,内层for循环求出number的位数,给y赋值number的平方取余10的number位数的平方,条件判断y与number是否相......
  • PAT Basic 1091. N-自守数
    PATBasic1091.N-自守数1.题目描述:如果某个数\(K\)的平方乘以\(N\)以后,结果的末尾几位数等于\(K\),那么就称这个数为“\(N\)-自守数”。例如\(3×92^2=25392\),而\(25392\)的末尾两位正好是\(92\),所以\(92\)是一个\(3\)-自守数。本题就请你编写程序判断一个给定的......