Другие языки программирования и технологии
Помогите составить программу в Pascal или С++(а лучше и там и там)
Даны стороны двух треугольников. Найти сумму их периметров и сумму их площадей, определить процедуру для расчёта периметра и площади треугольника по его сторонам.
#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);
int main () {
double a1, b1, c1, a2, b2, c2, sp, sa;
cout << "a1, b1, c1, a2, b2, c2?.. ";
cin >> a1 >> b1 >> c1 >> a2 >> b2 >> c2;
if (exists(a1, b1, c1) && exists(a2, b2, c2)) {
sp = perimetre(a1, b1, c1) + perimetre(a2, b2, c2);
sa = area(a1, b1, c1) + area(a2, b2, c2);
cout << "The sum of perimetres = " << sp << endl
<< "The sum of the areas = " << sa << endl;
} else cout << "\aAt least one of triangles does not exist!";
cin.get(); cin.get();
return 0;
}
bool exists(const double a, const double b, const double c) {
bool x;
double max = (a > b) ? (a > c) ? a : c : (b > c) ? b : c;
(a + b + c - max > max) ? x = true : x = false;
return x;
}
double perimetre(const double a, const double b, const double c) { return a + b + c; }
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));
}
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);
int main () {
double a1, b1, c1, a2, b2, c2, sp, sa;
cout << "a1, b1, c1, a2, b2, c2?.. ";
cin >> a1 >> b1 >> c1 >> a2 >> b2 >> c2;
if (exists(a1, b1, c1) && exists(a2, b2, c2)) {
sp = perimetre(a1, b1, c1) + perimetre(a2, b2, c2);
sa = area(a1, b1, c1) + area(a2, b2, c2);
cout << "The sum of perimetres = " << sp << endl
<< "The sum of the areas = " << sa << endl;
} else cout << "\aAt least one of triangles does not exist!";
cin.get(); cin.get();
return 0;
}
bool exists(const double a, const double b, const double c) {
bool x;
double max = (a > b) ? (a > c) ? a : c : (b > c) ? b : c;
(a + b + c - max > max) ? x = true : x = false;
return x;
}
double perimetre(const double a, const double b, const double c) { return a + b + c; }
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));
}
периметр - сложить все стороны треугольника.. . неужто так сложно сложить три числа?
Похожие вопросы
- Помогите составить программу на pascal
- Помогите составить программу в Pascal ABC
- Помогите составить программу в Pascal
- Помогите составить программу в pascal? срочно надо!!!!
- Помогите составить программу на Pascal.
- Помогите составить программу в Pascal
- помогите составить программу на Pascal дана матрица NxN.Найти наибольший элемент строки K.
- Помогите составить программу через Pascal с использованием функции и процедуры.
- Пожалуйста, помогите составить программу в Pascal.
- помогите составить программу на языке Turbo pascal