一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

问题描述:

一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
这个程序怎么结果不对
#include "stdio.h"
#include "math.h"
void main()
{
\x05double i,x,y;
\x05for(i=1;i
1个回答 分类:数学 2014-11-02

问题解答:

我来补答
不能用double型.double型是实数,你这样x=sqrt(i+100)的话x就是sqrt(i+100)的精确值,平方后当然还是i+100了.求x,y时加个取整就行了.
再问: 实数范围不是比整数还要大吗? 我把double 换成了 int 就可以了,,,我不懂为什么double不可以?请指点吧
再答: 比如这个: i=1的时候,如果X声明为double x=sqrt(i+100)=sqrt(101)=10.0499...... 那么X*X=101这个式子还是成立的。。。那你就会输出1了,虽然101不是完全平方。。。 如果X声明为int,X=10。。。这样就符合要求了。。。
 
 
展开全文阅读
剩余:2000