自守数 c++
题目描述:
自守数是指一个数的平方的尾数等于该数自身的自然数。例如:25^2 = 625,76^2 = 5776,9376^2 = 87909376。请求出n以内的自守数的个数
输入描述:
int型整数
输出描述:
n以内自守数的数量
输入示例:
2000
输出示例:
8
碎碎念:题目不难,注意每一次循环中要对变量初始化,注意0也在其中。
- 一位数中,只有0,1,5,6,为自守数,
- 二位数中自守数以1,5,6结尾,为25,76。
- 三位数中自守数必以25,76结尾,为625,376。
- 以此类推,可减少循环次数。
此题我只使用了10为步长跳着循环,可以再改进。
#include<iostream>
using namespace std;
//1*1=1,5*5=25,6*6=36,
//只需判断以1,5,6结尾的数即可。
int main()
{
int n;
int num=0;
while(cin>>n){
int num=0;
if(n==0