Advertisement
xotohop

class_triangle.cpp

Apr 10th, 2020
226
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.81 KB | None | 0 0
  1. #include <iostream>
  2. #include <math.h>
  3.  
  4. using namespace std;
  5.  
  6. class triangle
  7. {
  8.     private:
  9.         int a, b, c;    // стороны
  10.         float p, s;       // периметр и площадь
  11.     public:
  12.        triangle()
  13.        {
  14.             a = b = c = 0;
  15.        };
  16.        triangle(int a_in, int b_in, int c_in)
  17.        {
  18.             a = a_in; b = b_in; c = c_in;
  19.        };
  20.        void set();
  21.        bool check();    // проверка на существование треугольника
  22.        void P();        // периметр
  23.        void S();        // площадь
  24.        void show();     // показ результатов
  25.        ~triangle(){ cout << "destruct triangle ... " << endl; }
  26. };
  27.  
  28. int main()
  29. {
  30.     //int in1, in2, in3;                    
  31.     //cout << "enter a, b and c:" << endl;  //  ИСПОЛЬЗУЕМ
  32.     //cin >> in1 >> in2 >> in3;             //  ЛИБО ЭТО
  33.     //triangle triangle_(in1, in2, in3);    
  34.     triangle triangle_;                     //  ЛИБО ВОТ ЭТО
  35.     triangle_.set();
  36.     if (triangle_.check() == false)
  37.     {
  38.        cout << "triangle does not exist!";
  39.        exit(1);
  40.     }
  41.     triangle_.P();
  42.     triangle_.S();
  43.     triangle_.show();
  44.     return 0;
  45. }
  46.  
  47. void triangle::show()
  48. {
  49.     cout << "triangle sides: " << endl;
  50.     cout << "a = " << a << endl << "b = " << b << endl << "c = " << c << endl;
  51.     cout << "P = " << p << endl;
  52.     cout << "S = " << s << endl;
  53. }
  54. void triangle::P()
  55. {
  56.     p = a + b + c;
  57. }
  58. void triangle::S()
  59. {
  60.     s = sqrt(p / 2 * (p / 2 - a) * (p / 2 - b) * (p / 2 - c));
  61. }
  62.  
  63. bool triangle::check()
  64. {
  65.     if ((a + b) <= c || (a + c) <= b || (b + c) <= a)
  66.         return false;
  67.     return true;
  68. }
  69.  
  70. void triangle::set()
  71. {
  72.     cout << "enter a, b and c:" << endl;
  73.     cin >> a >> b >> c;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement