백준 5073 c++
#include <iostream>
using namespace std;
int input(int lower, int upper);
void input_arr(int** arr, int row);
void check_triangle(int** arr, int row);
int main(void)
{
int i;
int** arr = new int* [100];
for (i = 0; i < 100; i++)
{
arr[i] = new int[3] {};
}
input_arr(arr, 100);
check_triangle(arr, 100);
for (i = 0; i < 100; i++)
{
delete[] arr[i];
}
delete[] arr;
return 0;
}
int input(int lower, int upper)
{
int A;
while (1)
{
cin >> A;
if (A >= lower && A <= upper)
{
break;
}
else
{
;
}
}
return A;
}
void input_arr(int** arr, int row)
{
int i, j;
for (i = 0; i < row; i++)
{
arr[i][0] = input(0, 1000);
arr[i][1] = input(0, 1000);
arr[i][2] = input(0, 1000);
if (arr[i][0] == 0 && arr[i][1] == 0 && arr[i][2] == 0)
{
break;
}
else if(arr[i][0] == 0 || arr[i][1] == 0 || arr[i][2] == 0)
{
i--;
}
else
{
;
}
}
return;
}
void check_triangle(int** arr, int row)
{
int i, A, B, C;
for (i = 0; i < row; i++)
{
A = arr[i][0];
B = arr[i][1];
C = arr[i][2];
if (A == 0 && B == 0 && C == 0)
{
break;
}
else
{
if ((A+B <= C)|| (B+C) <= A || (C+A) <= B)
{
cout << "Invalid" << endl;
}
else
{
if (A == B && B == C)
{
cout << "Equilateral" << endl;
}
else if (A == B || B == C || C == A)
{
cout << "Isosceles" << endl;
}
else
{
cout << "Scalene" << endl;
}
}
}
}
return;
}