一位卡车司机违反交通规则,撞死了行人。当时有三位目击者,都没有看清卡车的牌照号码,只记住了牌照的某些特征:甲记住前两个数字是相同的,乙记住牌照的后两位数字是相同的,丙是一位数学家,他说:“牌照号码肯定是一个四位数,并且这个四位数恰好是一个整数的平方。”根据这些,你能否正确判断出牌照号码?
#include<stdio.h>
void main()
{
int num=0;
int i,j,a,b;
//由于知道牌照号码肯定是一个四位数,并且这个四位数恰好是一个整数的平方。所以我们可以知道这属于31-100的平方
for(int y=31;y<100;y++){
//num为31-100平方所得的一个4位数
num=y*y;
//i为num的千位数
i=num/1000;
//j为num的百位数
j=(num-i*1000)/100;
//a为num的十位数
a=(num/10)%10;
//b为num的个位数
b=(num%10);
//选出符合千位和百位、十位和个位相等的数,
if(i!=0 && j!=0 && i==j && a==b)
{
printf("%d\n%d\n",num,y);
}
}
}