c++,c语言

来源:百度知道 编辑:UC知道 时间:2024/05/28 02:13:22
题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

假设
x+100=i*i(i为整数,设为正)--1
x+268=n*n(n为整数,设为正)--2
则有:
1=<n-i<=168开方!------------3
由 1,2,3,三个式子可以得到:
i<=167/2和1=<n-i<13
以上可编程:

main()
{int n,i;
for(i=1;i<84;i++)
{for(n=i+1;n<i+13;n++)
if(n*n-168==i*i) printf("\n%d",i*i-100);}}

运行结果为
-99
21
261
2581

如果一个数恰好是某个有理数的平方,那么这个数叫做完全平方数. 例如0,1,0.36,,121都是完全平方数.
汗~~这要好几个循环阿~~~

main()
{ int a,b;
for(b=1;b<340;b++)
for(a=1;a<b;a++)
if((a+b)*(b-a)==168)
printf("%d\n",a*a-100);
getch();
}

-99, 21, 261, 1581...只有这4个,而且-99是唯一满足这个条件的负数:

#include <iostream>
using namespace std;

int main()
{
unsigned a, b;
double c, d;
double i = 0;
while(true)
{
c = sqrt(i + 100);
d = sqrt(i + 268);
a = c;
b = d;
if(a == c && b == d)
{