이 문제에서 짚고 넘어가야 할 키워드
처음에는 배열을 만들어서 3개의 숫자의 크기를 하나씩 비교해가면서 가장 큰 수를 찾아내는 방법을 생각했었지만 그것은 쓸데없이 코드가 길어지는 단점을 가지고 있다. 그래서 생각해낸 것은 swap 함수를 생성해서 값이 가장 큰 값을 z라는 변수에 고정해두는 것이다. 그리고 0 0 0을 입력하게 된다면 프로그램이 종료되야 하기 때문에 if문을 사용해 0 0 0을 입력받으면 return 0을 해주는 것이다.
최종 코드는 다음과 같다.
#include <iostream>
using namespace std;
int main()
{
while(true)
{
int x, y, z;
int temp = 0;
cin >> x >> y >> z;
if(x == 0 && y == 0 && z == 0) return 0;
if(x > y)
{
temp = x;
x = y;
y = temp;
}
if(y > z)
{
temp = y;
y = z;
z = temp;
}
if(z*z == x*x + y*y) cout << "right" << endl;
else cout << "wrong" << endl;
}
}