这个程序用vc++编译发现一个错误我看不出来呀。。。

王朝知道·作者佚名  2009-08-16
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

【程序3】

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

1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后

的结果满足如下条件,即是结果。请看具体分析:

2.程序源代码:

#include "math.h"

main()

{

long int i,x,y,z;

for (i=1;i<100000;i++)

{ x=sqrt(i+100); /*x为加上100后开方后的结果*/

y=sqrt(i+268); /*y为再加上168后开方后的结果*/

if(x*x==i+100&&y*y==i+268)/*如果一个数的平方根的平方等于该数,这说明此数是完全平方数*/

printf("\n%ld\n",i);

}

}

參考答案:

[这个程序用vc++编译发现一个错误我看不出来呀。。。]请问,是指什么?

是可以运行,但程序逻辑上的错误?

还是编译没有通过,语法上的错误?

如果是编译没通过,请给出提示?(大概看了看,没什么大问题。)

如果是能运行,没有结果,或错误,是否考虑,这个数可以是负数。

x*x = i + 100 ....1

y*y = i+ 268 ....2

2式减1式:

y*y - x*x = 168 .

心算出一组数, y= 13, x=1.

代回原式,i= -99。

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航