Advertisement
Jopa322

Untitled

Oct 29th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.25 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include "iostream"
  3. using namespace std;
  4.  
  5. class Ring
  6. {
  7. public:
  8. Ring(int outer = 10, int inner = 8);
  9. Ring& operator =(Ring &ring);
  10. Ring& operator +=(int number);
  11. bool operator !=(Ring &ring);
  12. friend bool operator ==(Ring &ring1, Ring &ring2);
  13. friend Ring operator *(int number, Ring &ring);
  14. void vvod();
  15. void vivod();
  16. private:
  17. int Inner, Outer;
  18. };
  19.  
  20. Ring::Ring(int outer, int inner)
  21. {
  22. Outer = outer;
  23. Inner = inner;
  24. }
  25. Ring& Ring::operator =(Ring& ring)
  26. {
  27. Inner = ring.Inner;
  28. Outer = ring.Outer;
  29. return *this;
  30. }
  31. bool Ring::operator !=(Ring& ring)
  32. {
  33. if (Inner != ring.Inner || Outer != ring.Outer)
  34. return true;
  35. else
  36. return false;
  37. }
  38. bool operator == (Ring &ring1, Ring &ring2)
  39. {
  40. if (ring1.Inner == ring2.Inner && ring1.Outer == ring2.Outer)
  41. return true;
  42. else
  43. return false;
  44. }
  45. Ring operator * (int number, Ring &ring)
  46. {
  47. Ring tmp;
  48. tmp.Outer = ring.Outer * number;
  49. tmp.Inner = ring.Inner * number;
  50. return tmp;
  51. //return number * (ring.Outer + ring.Inner);
  52. }
  53.  
  54. Ring& Ring::operator +=(int number)
  55. {
  56. Inner += number;
  57. Outer += number;
  58. return *this;
  59. }
  60. void Ring::vvod()
  61. {
  62. cout << "Ввод данных:" << endl;
  63. cout << "Внешнее: ";
  64. cin >> Outer;
  65. cout << "Внутреннее: ";
  66. cin >> Inner;
  67. }
  68. void Ring::vivod()
  69. {
  70. cout << "Внешнее: " << Outer << endl;
  71. cout << "Внутреннее: " << Inner << endl << endl;
  72.  
  73. }
  74.  
  75.  
  76. void main()
  77. {
  78. setlocale(LC_ALL, "Russian");
  79. Ring ring1;
  80. Ring *ring2 = new Ring();
  81. Ring ring3;
  82. cout << "ring1" << endl;
  83. ring1.vivod();
  84. cout << "ring2" << endl;
  85. ring2->vvod();
  86. ring3 = ring1;
  87. ring2->vivod();
  88. cout << "ring3" << endl;
  89. ring3.vivod();
  90. cout << "ring3 + 5" << endl;
  91. ring3 += 5;
  92. ring3.vivod();
  93.  
  94. Ring ring4;
  95. cout << "ring4" << endl;
  96. ring4.vivod();
  97. if (ring3 == ring1)
  98. cout << "ring3 = ring1" << endl;
  99. else if (ring3 != ring1)
  100. cout << "ring3 != ring1" << endl;
  101. if (ring4 == ring1)
  102. cout << "ring4 = ring3" << endl;
  103. else if (ring4 != ring1)
  104. cout << "ring4 != ring3" << endl;
  105.  
  106. int number = 1;
  107. cout << "Введите число: ";
  108. cin >> number;
  109. // int result = number * ring1;
  110. cout << number << " * ring1 = " << endl;
  111. (number * ring1).vivod();
  112.  
  113. system("pause");
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement