Надо! треугольник задан длинами сторон а, в, с. разработать схему алгоритма, опре-деляющую, существует ли данный треугольник. если треугольник существует, то устано-вить значение флага f=1, иначе f=0. для решения этой использовать сложные логические условия. протестировать алгоритм для следующих исходных данных: а) a=3, b=4, c=5 б) a=1, b=1, c=1 в) a=0, b=4, c=5 г) a=-3, b=6, c=5 д) a=2, b=1, c=8
a,b,c:real;
F:byte;
begin
Write('Введите длины сторон треугольника: '); Readln(a,b,c);
if (a<b+c) and (b<a+c) and (c<a+b) and
(a>0) and (b>0) and (c>0) then F:=1 else F:=0;
if F=1 then Writeln('Треугольник можно построить')
else Writeln('Треугольник построить нельзя')
end.
Тестовые решения:
Введите длины сторон треугольника: 3 4 5
Треугольник можно построить
Введите длины сторон треугольника: 1 1 1
Треугольник можно построить
Введите длины сторон треугольника: 0 4 5
Треугольник построить нельзя
Введите длины сторон треугольника: -3 6 5
Треугольник построить нельзя
Введите длины сторон треугольника: 2 1 8
Треугольник построить нельзя
Может пригодится :)
если можно построить - "yep", иначе - "no"
#include <iostream>
#include <conio.h>
using namespace std;
void triangleOptimal(int m, int n, int k)
{
if(k<0 || m<0 || n<0)
{
cout << "no";
}
else
{
if(k*k == m*m + n*n)
{
cout << "yep";
}
else
{
cout << "no";
}
}
}
int main()
{
int a,b,c;
cin >> a;
cin >> b;
cin >> c;
triangleOptimal(a,b,c);
_getch();
return 0;
}