Предлагаем вам немного вспомнить школьный курс геометрии. На вход программе подается три вещественных числа. Числа могут быть любыми, в том числе отрицательными и равными нулю. Вам необходимо определить, можно ли из трех отрезков, длины которых соответствуют введенным числам составить треугольник, и какой треугольник (прямоугольный, остроугольный или тупоугольный) при этом получится. C++ попроще
#include <iostream> #include <cmath> int main { double a, b, c; std::cin >> a >> b >> c; if (a + b <= c || a + c <= b || b + c <= a) { std::cout << "Треугольник не существует\n"; } else { if a∗a+b∗b==c∗c∣∣a∗a+c∗c==b∗b∣∣b∗b+c∗c==a∗aa * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * aa∗a+b∗b==c∗c∣∣a∗a+c∗c==b∗b∣∣b∗b+c∗c==a∗a { std::cout << "Прямоугольный треугольник\n"; } else if (a * a + b * b > c * c || a * a + c * c > b * b || b * b + c * c > a * a) { std::cout << "Остроугольный треугольник\n"; } else { std::cout << "Тупоугольный треугольник\n"; } } return 0; }
Программа сначала считывает три числа a, b, c, затем проверяет условие существования треугольника суммадвухлюбыхсторондолжнабытьбольшетретьейсумма двух любых сторон должна быть больше третьейсуммадвухлюбыхсторондолжнабытьбольшетретьей. Затем программа определяет тип треугольника: прямоугольный еслисуммаквадратовдвухкратчайшихсторонравнаквадратудлиннейшейстороныесли сумма квадратов двух кратчайших сторон равна квадрату длиннейшей стороныеслисуммаквадратовдвухкратчайшихсторонравнаквадратудлиннейшейстороны, остроугольный еслисуммаквадратовдвухкратчайшихсторонбольшеквадратадлиннейшейстороныесли сумма квадратов двух кратчайших сторон больше квадрата длиннейшей стороныеслисуммаквадратовдвухкратчайшихсторонбольшеквадратадлиннейшейстороны или тупоугольный еслисуммаквадратовдвухкратчайшихсторонменьшеквадратадлиннейшейстороныесли сумма квадратов двух кратчайших сторон меньше квадрата длиннейшей стороныеслисуммаквадратовдвухкратчайшихсторонменьшеквадратадлиннейшейстороны.
Надеюсь, это поможет вам вспомнить школьный курс геометрии!
Вот простое решение на C++:
#include <iostream>#include <cmath>
int main {
double a, b, c;
std::cin >> a >> b >> c;
if (a + b <= c || a + c <= b || b + c <= a) {
std::cout << "Треугольник не существует\n";
} else {
if a∗a+b∗b==c∗c∣∣a∗a+c∗c==b∗b∣∣b∗b+c∗c==a∗aa * a + b * b == c * c || a * a + c * c == b * b || b * b + c * c == a * aa∗a+b∗b==c∗c∣∣a∗a+c∗c==b∗b∣∣b∗b+c∗c==a∗a {
std::cout << "Прямоугольный треугольник\n";
} else if (a * a + b * b > c * c || a * a + c * c > b * b || b * b + c * c > a * a) {
std::cout << "Остроугольный треугольник\n";
} else {
std::cout << "Тупоугольный треугольник\n";
}
}
return 0;
}
Программа сначала считывает три числа a, b, c, затем проверяет условие существования треугольника суммадвухлюбыхсторондолжнабытьбольшетретьейсумма двух любых сторон должна быть больше третьейсуммадвухлюбыхсторондолжнабытьбольшетретьей. Затем программа определяет тип треугольника: прямоугольный еслисуммаквадратовдвухкратчайшихсторонравнаквадратудлиннейшейстороныесли сумма квадратов двух кратчайших сторон равна квадрату длиннейшей стороныеслисуммаквадратовдвухкратчайшихсторонравнаквадратудлиннейшейстороны, остроугольный еслисуммаквадратовдвухкратчайшихсторонбольшеквадратадлиннейшейстороныесли сумма квадратов двух кратчайших сторон больше квадрата длиннейшей стороныеслисуммаквадратовдвухкратчайшихсторонбольшеквадратадлиннейшейстороны или тупоугольный еслисуммаквадратовдвухкратчайшихсторонменьшеквадратадлиннейшейстороныесли сумма квадратов двух кратчайших сторон меньше квадрата длиннейшей стороныеслисуммаквадратовдвухкратчайшихсторонменьшеквадратадлиннейшейстороны.
Надеюсь, это поможет вам вспомнить школьный курс геометрии!