题目
巧处 ( 需记忆)
1.对于平方的相关问题注意是否可以用sqrt函数
2: 对于多重循环相加问题,可以通过(总和-部分),来减少一层循环
3:判定一个数是否是整数:先定义 Double x再if(x==int (x))
代码段
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int a, b, c, n;
double d;
cin>>n;
double Mid = sqrt(n);
for(a = 0; a <= Mid; a ++){
for(b = a; b <= Mid; b ++){
for(c = b; c <= Mid; c ++){
d = sqrt(n - a*a - b*b - c*c);//三循环
if(d == (int)d){ //判定答案
cout<<a<<" "<<b<<" "<<c<<" "<<d<<endl;
return 0;
}
}
}
}
return 0;