如图。
那么如何实现代码呢?
首先,无论它能否组成三角形,都是最大的一个(或两个)数操作。
所以我们先要对它排序。
排完序后就好做很多。步骤如下:
1.判断是否为直角三角形,用勾股定理:
2.如果是,输出最大数的平方。
如果不是,输出最大数和第二大数的平方和。
代码如下:
#include<bits/stdc++.h>
using namespace std;
int a[4]; //为了排序方便点
int main(){
// freopen("triangle.in","r",stdin);
// freopen("triangle.out","w",stdout);
//文件读写操作
cin>>a[1]>>a[2]>>a[3];
sort(a+1,a+4); //排序函数sort
if(a[3]*a[3]==a[1]*a[1]+a[2]*a[2]){ //判断是否为直角三角形
cout<<a[3]*a[3];
}
else{ //如果不是
cout<<a[3]*a[3]+a[2]*a[2];
}
return 0;
}