2019秋_计导练习5 F

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_45746839/article/details/102752781

题目描述
所谓“同构数”是指这样的数,它出现在它的平方数的右边,例如5的平方数是25, 25的平方数是625,所以5和25都是同构数。你的任务是判断整数x是否是同构数。若是同构数,输出“Yes”,否则输出“No”。x的取值范围是(1<=x<=10000),如果输入的x不在允许范围内,则输出错误提示信息“x out of range”。

输入与输出要求:
输入一个整数(可以用int存储)。输出判断结果,占一行。

程序运行效果:
Sample 1:
25↙
Yes
Sample 2:
45↙
No
Sample 3:
20000↙
20000 out of range

#include<stdio.h>
#include<math.h>
int main(){
	int n;
	scanf("%d",&n);
	if(n>10000||n<1) printf("%d out of range\n",n);
	else {
		int i,n1;
		for(n1=n,i=0;n1>0;i++){
			n1/=10;
		}
		int wei=pow(10,i);
		int fang=pow(n,2);
		fang%=wei;
		if(fang==n) printf("Yes\n");
		else printf("No\n");
	}
return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_45746839/article/details/102752781
F