Advertisement
Guest User

Untitled

a guest
Sep 18th, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.47 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class Calculator {
  6. private: int num;
  7. int den; // numerator - skaitiklis, dentiminator - vardiklis;
  8. public:
  9. Calculator(int a, int b) {
  10. num = a;
  11. den = b;
  12. } /// konstruktorius
  13.  
  14. Calculator multi(Calculator n) { // n klases objektas
  15. Calculator temp(0, 0);
  16. temp.num = num * n.num;
  17. temp.den = den * n.den;
  18. return temp;
  19. }
  20. Calculator div(Calculator n) {
  21. Calculator temp(0, 0);
  22. temp.num = num * n.den;
  23. temp.den = den * n.num;
  24. return temp;
  25. }
  26. Calculator sub(Calculator n) {
  27. Calculator temp(0, 0);
  28. temp.num = (num * n.den) - (n.num * den);
  29. temp.den = den * n.den;
  30. return temp;
  31.  
  32. }
  33. Calculator add(Calculator n) {
  34. Calculator temp(0, 0);
  35. temp.num = (num * n.den) + (n.num * den);
  36. temp.den = den * n.den;
  37. if (temp.num == temp.den) {
  38. temp.num = 1;
  39. temp.den = 1;
  40. }
  41. return temp;
  42.  
  43. }
  44. void input() {
  45. int aa, bb;
  46. char meniu;
  47. cin >> aa >> bb;
  48. num = aa;
  49. den = bb;
  50. }
  51. void output() {
  52. cout << " " << num << endl;
  53. cout << " ---" << endl;
  54. cout << " " << den << endl;
  55. }
  56.  
  57. };
  58. int main() {
  59. Calculator a(0, 0);
  60. Calculator b(0, 0);
  61. Calculator res(0, 0);
  62. char meniu = '0';
  63. int meniu2 = 0;
  64. a.input();
  65. b.input();
  66. cin >> meniu;
  67. while (meniu2 == 0) {
  68. switch (meniu) {
  69. case '+':
  70. {
  71. res = a.add(b);
  72. res.output();
  73. meniu = 'L';
  74. break;
  75. }
  76. case '-':
  77. {
  78. res = a.sub(b);
  79. res.output();
  80. meniu = 'L';
  81. break;
  82. }
  83. case '*':
  84. {
  85. res = a.multi(b);
  86. res.output();
  87. meniu = 'L';
  88. break;
  89. }
  90. case '/':
  91. {
  92. res = a.div(b);
  93. res.output();
  94. meniu = 'L';
  95. break;
  96. }
  97. case 'L':
  98. {
  99. cout << "Ka norite daryti toliau? R - atlikti veiksmus su rezultatu; N - atlikti veiksmus su naujais " << endl;
  100. cout << "skaicias, S - uzbaigti programa. " << endl;
  101. char temp;
  102. cin >> temp;
  103. if (temp == 'R') {
  104. meniu = 'R';
  105. }
  106. if (temp == 'N') {
  107. meniu = 'N';
  108. }
  109. if (temp == 'S') {
  110. meniu2 = 1;
  111. }
  112.  
  113. }
  114. case 'R':
  115. {
  116. a = res;
  117. cout << "Rezultatas. :" << endl;
  118. a.output();
  119. cout << "Iveskite nauja skaitikli ir vardikli. " << endl;
  120. b.input();
  121. cout << "Iveskite norima veiksma: " << endl;
  122. cin >> meniu;
  123. break;
  124.  
  125. }
  126. case 'N': {
  127. cout << "Iveskite naujus skaitiklius ir vardiklius. " << endl;
  128. a.input();
  129. cout << " ir " << endl;
  130. b.input();
  131. cout << "Iveskite veiksmą: " << endl;
  132. cin >> meniu;
  133. break;
  134. }
  135.  
  136. }
  137. }
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement