当前位置: 代码迷 >> C语言 >> 一个整数(
  详细解决方案

一个整数(

热度:361   发布时间:2005-05-28 15:43:00.0
一个整数(
一个整数(<10万),它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
怎么编啊,我想了很长时间拉
搜索更多相关的解决方案: 整数  整数  整数  

----------------解决方案--------------------------------------------------------

//一个整数(<10万),它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? #include <stdio.h> #include <math.h>

int main() { long num; for(num=1;num<100000;num++) { if((long)sqrt(num+100)*(long)sqrt(num+100)==num+100&&(long)sqrt(num+268)*(long)sqrt(num+268)==num+268) printf("The number is : %d\n",num); } return 0; }


----------------解决方案--------------------------------------------------------
运行不了啊
----------------解决方案--------------------------------------------------------
你是在Tc2.0上吗
如是
把注释“//”改成/* */


----------------解决方案--------------------------------------------------------
不是那个原因呀
我编译通过啦,但什么也看不见呀,我也加了getch()啦
----------------解决方案--------------------------------------------------------

楼主的标题写的很好. #include<stdio.h>

main(){ int x=10,b=2;long g; for(x=10;x<84;x++) for(b=2;b<13;b+=2){ g=2*x*b+b*b; if(g == 168){ printf("\\%d,%d,%d\n",x*x-100,x,x+b);break; } }getch();} 打出的第一个数就是答案,第二,三个数分别是两个平方根


----------------解决方案--------------------------------------------------------
上面的程序漏掉了是负数的情况. main(){ int x=10,b=2;long g; for(x=1;x<84;x++) for(b=2;b<13;b+=2){ g=2*x*b+b*b; if(g == 168){ printf("\\%d,%d,%d\n",x*x-100,x,x+b);break; } }getch();}
----------------解决方案--------------------------------------------------------
看不懂
----------------解决方案--------------------------------------------------------
用的是什么编的~~? Turbo C2.0 ?
----------------解决方案--------------------------------------------------------
看看这个程序。
main()
{
  int a,b;
  for(b=1;b&lt;340;b++)
    for(a=1;a&lt;b;a++)
      if((a+b)*(b-a)==168)
  printf("%d\n",a*a-100);
  getch();
}
----------------解决方案--------------------------------------------------------
  相关解决方案