Advertisement
endreweast

Practic 2.1

Dec 16th, 2015
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.33 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Int
  6. {
  7. private:
  8. int number;
  9. public:
  10. Int()
  11. {
  12. setNull();
  13. }
  14. Int(int num)
  15. {
  16. number = num;
  17. }
  18. void setNum(int num)
  19. {
  20. number = num;
  21. }
  22. int getNum()
  23. {
  24. return number;
  25. }
  26. void setNull()
  27. {
  28. number = 0;
  29. }
  30. bool rangeCheck(long double number)
  31. {
  32. if (number < -2147483648 && number > 2147483648)
  33. {
  34. cout << "Error" << endl;
  35. return false;
  36. }
  37. return true;
  38. }
  39. Int operator+(Int value)
  40. {
  41. Int result;
  42. long double test = number + value.getNum();
  43. if (rangeCheck(test))
  44. {
  45. result.setNum((int)test);
  46. }
  47. return result;
  48. }
  49. Int operator-(Int value)
  50. {
  51. Int result;
  52. long double test = number - value.getNum();
  53. if (rangeCheck(test))
  54. {
  55. result.setNum((int)test);
  56. }
  57. return result;
  58. }
  59. Int operator*(Int value)
  60. {
  61. Int result;
  62. long double test = number * value.getNum();
  63. if (rangeCheck(test))
  64. {
  65. result.setNum((int)test);
  66. }
  67. return result;
  68. }
  69. Int operator/(Int value)
  70. {
  71. Int result;
  72. long double test = number / value.getNum();
  73. if (rangeCheck(test))
  74. {
  75. result.setNum((int)test);
  76. }
  77. return result;
  78. }
  79. void print()
  80. {
  81. cout << "Number: " << number << endl;
  82. }
  83. };
  84.  
  85. int main()
  86. {
  87. Int a(2);
  88. Int b(5);
  89. Int result;
  90. result = a + b;
  91. result.print();
  92. result = a - b;
  93. result.print();
  94. result = a * b;
  95. result.print();
  96. result = a / b;
  97. result.print();
  98. system("pause"підморгує;
  99. return 0;
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement