练习题5_20毕达哥拉斯三元组
习题5_20毕达哥拉斯三元组
/* 一个直角三角形的边长可以都是整数,此时这组代表边长的整数就 称为一个毕达哥拉斯三元组。直角三角形三条边的边长必须满足关系: 两直角的平方和等于斜边的平方。请编写程序,要求寻找出三个值( 用变量side1和side2分别表示两个直角边,用变量hypotenuse代表 斜边)都不大于500的所有毕达哥拉斯三元组。 请使用一个三层嵌套的for循环来尝试所有可能性 */ #include <iostream> #include <iomanip> using namespace std; int main() { cout << "毕达哥拉斯三元组:" << endl; int side1,side2,hypotenuse;//直角三角形的两直角边与斜边; for(hypotenuse=1;hypotenuse<=500;hypotenuse++) for(side1=1;side1<hypotenuse;side1++) for(side2=1;side2<side1;side2++) { if(hypotenuse*hypotenuse == side1*side1 + side2*side2) cout << setw(4) << side2 << setw(4) << side1 << setw(4) << hypotenuse << endl; } system("pause>>cout"); return 0; }