用C++编程求出一个四位完全平方数,前两个数字相同,后两个数字相同。

该怎么做?麻烦大神写下详细步骤...... 该怎么做?麻烦大神写下详细步骤... 展开
 我来答
Archkiva
2014-03-31
知道答主
回答量:14
采纳率:0%
帮助的人:1万
展开全部
这绝颂早个应该可以:
#include<iostream>
#include<cmath>
using namespace std;
bool judge(float s)
{
int k=s;
if(k-s==0) return true;
return false;
}
int main()
{

int ans[90];
int num=0;
for(int i=1;i<=9;i++)
{
for(int j=0;j<=9;j++)
{
int k=i*100+i*1000+j+j*10;
float s=sqrt(k);

if(judge(s)) {ans[num]=k;num++;}
}
}
for(int i=0;i<num;i++)
cout<并雀樱手<ans[i]<<' ';

cout<<endl;
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
简尔清寻桃
2019-09-10 · TA获得超过3928个赞
知道大有可为答主
回答量:3084
采纳率:29%
帮助的人:426万
展开全部

展开全部
1234567891011121314151617181920212223【解题思路】一个数若能表示成某个整数的平方的形式,则称这个数为完全平方数。比如:0,1,4,9,16,25,……。本题有两个关键点:第一个是找出四位数的完全平方数;第二个是判断这个完全平方数是不是前两位相同,并且后两位也相同。第一个问题比较简单,四位数是从1000到9999之间,但是不需要从1000开始一个一个去判断是否完全平方数,这样做要检测9000个,每个数还要看看是不是完全平方数,计算量梁孙春很大。事实上只需要从32开始到99,逐个取平方就可以得到所有四位数的完全平方数。(因为31的平方是三位数,而100的平方是五位数,所以只需要凯运在32到99的平方数中一个个找下去就可以了)。第二个问题可以巧妙利用C语言中的取余运算符%和整型变量除法规则来实现。比如要对1234进行上述比较,可以先把1234分成两截,办法如下:int a=1234/100;int b=1234%100;因为C语言中整数除法会自动忽略小数部分,所以int a=1234/100的结果就是a=12;而取余运算符是得到余数,所以int b=1234%100的意思就是1234除以100的余数,结果就是b=34,这样就成功把1234分成12和34两段,然后再分别判断a和b个位和十位是否相同就可以了。判断的方法如下:if(a/10==a%10),因为a/10会得到a的十位数,而a%10会得到a的个位数,所以只要这两个相等,就说明a的个位和十位相同,因此上题的具体代码如下:  【程序代码】#include <iostream>             //控制台操作头文件  int main()                      //主函数{int i,a,b;                     //整型变量 printf("前两位和后两位分别相同的四位完全平方数有:"); for(i=32;i<100;i++)            //通过循环逐个检测四位数完全平方数   {a=(i*i)/100;     橡耐           //得到完全平方数的前两位    b=(i*i)%100;                //得到完全平方数的后两位    if(a/10==a%10&&b/10==b%10)  //如果前两位和后两位分别相同    printf("%d(%d的平方)",i*i,i);}//输出这个四位数的完全平方数 printf("\n");                  //换行 system("PAUSE");               //屏幕暂停,以便看到显示结果 return 0;}                     //结束程序  【运行结果】以上程序在DEV  C++中运行通过,运行结果是只有7744这个数符合要求,它是88的平方。具体截图如下:

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式