#include <iostream>
using namespace std;
bool exists(const double, const double, const double);
double perimetre(const double, const double, const double);
double area(const double, const double, const double);
double max_height(const double, const double, const double);
int main() {
system("chcp 1251 > nul");
cout << " Введите стороны треугольника: ";
double a, b, c;
cin >> a >> b >> c;
if (exists(a, b, c)) cout << " Наибольшая высота = " << max_height(a, b, c) << endl;
else cout << " Треугольник не существует! \n\a";
cin.get(); cin.get();
return 0;
}
double area(const double _a, const double _b, const double _c) {
double p = perimetre(_a, _b, _c) / 2;
return sqrt(p * (p - _a) * (p - _b) * (p - _c));
}
double max_height(const double _a, const double _b, const double _c) {
double ar2 = 2 * area(_a, _b, _c);
return max(max(ar2 / _a, ar2 / _b), ar2 / _c);
}
bool exists(const double _a, const double _b, const double _c) {
double maximum = max(max(_a, _b), _c);
if (perimetre(_a, _b, _c) - maximum <= maximum) return false;
return true;
}
double perimetre(const double _a, const double _b, const double _c) { return _a + _b + _c; }
Другие языки программирования и технологии
dev c++. помогите плз сделать задачу найти наибольшую высоту треугольника из сторонами a,b,c
#include<iostream>
#include<cmath>
using namespace std;
int main(){
float a,b,c,y; cout<<"a b c ? "; cin>>a>>b>>c; y=(a+b+c)/2;
y=2*sqrt(y*(y-a)*(y-b)*(y-c)); a=y/a; b=y/b; c=y/c;
y=a>b? (a>c?a:c): (b>c?b:c); cout<< y; cin.get(); cin.get();}
#include<cmath>
using namespace std;
int main(){
float a,b,c,y; cout<<"a b c ? "; cin>>a>>b>>c; y=(a+b+c)/2;
y=2*sqrt(y*(y-a)*(y-b)*(y-c)); a=y/a; b=y/b; c=y/c;
y=a>b? (a>c?a:c): (b>c?b:c); cout<< y; cin.get(); cin.get();}
уроки надо сразу делать, а ни в 22:30
Похожие вопросы
- помогите решить задачу!...Даны целые числа a, b, c, являющиеся сторонами некоторого треугольника.Проверить истинность вы
- Найти трехзначные числа a, b, c, все цифры которых различны и удовлетворяют уравнению a^2 – b^2 – c^2 = a – b – c.
- {(a,b), (c,b), (c,a)} - является транзитивным или нет?
- срочно помогите написать программу на ассемблере вычисляющую R. R=x2+y2, где x=a+b-c, y=b*c-a. a,b,c вводятся с клавы
- Вопросик по Pascal. Есть переменные A,B,C,D. Как сделать так, чтобы при вводе A выводилось цифра 1, B - 2, C-3, D-4?
- Программисты! Помогите пожалуйста! Нужно на паскале написать код к следующей задаче: Даны натуральные числа a, b, c
- Может ли кирпич, имеющий форму прямоугольного параллепипеда с ребрами a,b,c, пройти через круглое отверстие радиуса R?
- Помогите написать программу на С++: Заданы отрезки a,b,c,d. Проверить, могут ли они служить сторонами прямоугольника
- Создать программу по турбопаскаль вывести ответ желтым цветом даны три A,B,C числа найти максимальное
- очень нужно, помогите пожалуйста. Приведите словесное описание алгоритма сложения двух обыкновенных дробей a/b и c/d