Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- /*
- a, b, c - сторони трикутрика
- Triangle (float x, float y, float z) - констуктор ініціалізації списком
- Triangle(const Triangle &src) - конструктор копіювання
- friend Triangle operator - (const Triangle &a, const Triangle &b) - оператор - як дружня функція
- bool operator > (Triangle &a) - оператор >
- void set(char q) - SET
- void show(char q) - SHOW
- float calcP() { return a + b + c; } - обчислення периметра
- void showCond(char q, float p) - друкування інформації з умовою що P() > p
- */
- class Triangle {
- float a, b, c;
- public:
- Triangle() { a = b = c = 0; cout << "Used empty constructor" << endl;}
- Triangle (float x, float y, float z) : a(x), b(y), c(z) { cout << "Used list constructor" << endl; }
- Triangle(const Triangle &src) { a = src.a; b = src.b; c = src.c; cout << "Used copy constructor" << endl; }
- friend Triangle operator - (const Triangle &a, const Triangle &b);
- bool operator > (Triangle &a) { return (calcP() > a.calcP()); }
- void set(char q);
- void show(char q);
- float calcP() { return a + b + c; }
- void showCond(char q, float p) {
- if (calcP() > p) show(q);
- else cout << "Triangle " << q << " perimeter < p" << endl << endl;
- }
- };
- int main() {
- Triangle C1;
- C1.set('1');
- Triangle C2(3, 4, 5);
- C2.show('2');
- Triangle C3 = C2;
- C3.show('3');
- Triangle C4;
- C4 = C1 - C2;
- C4.show('4');
- cout << "C4 > C1: " << (C4 > C1) << endl << endl;
- cout << "P of tiangle C1 = " << C1.calcP() << endl;
- cout << "P of tiangle C2 = " << C2.calcP() << endl;
- cout << "P of tiangle C3 = " << C3.calcP() << endl;
- cout << "P of tiangle C4 = " << C4.calcP() << endl;
- int n;
- cout << endl << "Enter count of objects: ";
- cin >> n;
- Triangle objs[n];
- for (int i = 0; i < n; i++) {
- objs[i].set(i + '0');
- }
- float p;
- cout << endl << "Enter p: ";
- cin >> p;
- cout << endl << "Result: " << endl;
- for (int i = 0; i < n; i++) {
- cout << "P of triangle " << i + 1 << " = " << objs[i].calcP() << endl;
- objs[i].showCond(i + '0', p);
- }
- return 0;
- }
- void Triangle :: set(char q) {
- cout << "Enter info about triangle " << q << ":" << endl;
- cout << "\ta: ";
- cin >> a;
- cout << "\tb: ";
- cin >> b;
- cout << "\tc: ";
- cin >> c;
- cout << endl;
- }
- void Triangle :: show(char q) {
- cout << "Info about triangle " << q << ":" << endl;
- cout << "\ta: " << a << endl;
- cout << "\tb: " << b << endl;
- cout << "\tc: " << c << endl;
- cout << endl;
- }
- Triangle operator - (const Triangle &a, const Triangle &b) {
- Triangle c(a.a - b.a, a.b - b.b, a.c - b.c);
- return c;
- }
Add Comment
Please, Sign In to add comment