首页 > 其他分享 >自守数

自守数

时间:2023-05-10 09:46:47浏览次数:37  
标签:10 cout else 自守数 100 i%

一、问题描述

自守数是指一个数的平方的尾数等于该数自身的自然数。

例如:52=25   252=625  762=5776  93762=87909376

求100000以内的自守数。

二、设计思路

    从1循环到100000,找到它们尾数的平方,与数本身作对比,如果等于就是自守数

三、流程图

 

四、伪代码

For(10000次)

找尾数的平方

将尾数的平方与数本身比较

如果等于就是自守数

五、代码实现

#include<iostream>

using namespace std;

int main()

{

       /*cout<<36699%1000<<endl;*/

       for(int i=1;i<=100000;i++)

       {

              if(i<10)

              {

                     if((i*i)%10==i)

                     {

                            cout<<i<<"  ";

                     }

              }

              else if(i>=10&&i<100)

              {

                     if((i%10)*(i%10)==i)

                     {

                            cout<<i<<"  ";

                     }

              }

              else if(i>=100&&i<1000)

              {

                     if((i%100)*(i%100)==i)

                     {

                            cout<<i<<"  ";

                     }

              }

              else if(i>=1000&&i<10000)

              {

                     if((i%100)*(i%100)==i)

                     {

                            cout<<i<<"  ";

                     }

              }

              else

              {

                     if((i%1000)*(i%1000)==i)

                     {

                            cout<<i<<endl;

                     }

              }

       }

      

 

}

标签:10,cout,else,自守数,100,i%
From: https://www.cnblogs.com/duzhangdan/p/17387052.html

相关文章

  • 自守数
    一问题描述自守数i的平方为z,z的尾数等于那个i。二设计思路先求出i的位数再将i*i取余10的位数次方。三程序流程图 四伪代码实现#include<iostream>#include<math.h>usingnamespacestd;intmain(){ intj,z,x; for(inti=0;i<=10000;i++){ intj=1; intm; m=i; fo......
  • 自守数
    自然语言解决问题:根据自守数的定义,求解本题的关键是知道当前所求自然数的位数,以及该数平方的尾数与被乘数、乘数之间的关系流程图: 具体代码:#include<stdio.h>intmain(){longmul,number,k,a,b;printf("Itexistsfollowingautomorphicnmberssmallthan100000:\n");for......
  • 自守数
    自守数:自守数是指一个数的平方的尾数等于该数自身的自然数。例如: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\)-自守数。本题就请你编写程序判断一个给定的......