fork download
  1. #include <string>
  2. #include <iostream>
  3. using namespace std;
  4.  
  5. class cUlamek
  6. {
  7.  
  8. private:
  9. int l, m;
  10.  
  11. public:
  12. //Metody
  13. void wypisz();
  14. void pobierz();
  15. void skroc();
  16. cUlamek dodawanie(cUlamek X, cUlamek Y);
  17.  
  18. //cOsoba();
  19. ~cUlamek();
  20. cUlamek();
  21. cUlamek(int l, int m);
  22. cUlamek(const cUlamek& abc);
  23. };
  24.  
  25. void cUlamek::skroc()
  26. {
  27. int l, m, pom;
  28.  
  29. l = this->l;
  30. m = this->m;
  31.  
  32. int max = l;
  33. int min = m;
  34. if (m > max) {
  35. max = m;
  36. min = l;
  37. }
  38.  
  39. do {
  40. pom = max % min;
  41. max = min;
  42. min = pom;
  43. } while (pom != 0);
  44.  
  45. l = l / max;
  46. m = m / max;
  47.  
  48. this->l = l;
  49. this->m = m;
  50. }
  51. cUlamek::cUlamek()
  52. {
  53. this->l = 1;
  54. this->m = 2;
  55. }
  56. cUlamek::cUlamek(const cUlamek& abc)
  57. {
  58. this->l = l;
  59. this->m = m;
  60. }
  61.  
  62. cUlamek cUlamek::dodawanie(cUlamek X, cUlamek Y)
  63. {
  64. cUlamek Z(l, m);
  65.  
  66.  
  67. Z.l = X.l + Y.l;
  68. Z.m = X.m + Y.m;
  69. Z.skroc();
  70.  
  71. return Z;
  72. }
  73.  
  74. void cUlamek::pobierz()
  75. {
  76. int l, m;
  77.  
  78. cout << "Wprowadz licznik: ";
  79. cin >> l;
  80.  
  81. cout << "Wprowadz mianownik: ";
  82. cin >> m;
  83.  
  84. cout << "\n";
  85.  
  86. this->l = l;
  87. this->m = m;
  88. }
  89.  
  90. void cUlamek::wypisz()
  91. {
  92. cout << l << "/" << m << "\n";
  93. }
  94.  
  95. cUlamek::~cUlamek()
  96. {
  97. }
  98.  
  99. cUlamek::cUlamek(int l, int m)
  100. {
  101. this->l = l;
  102. this->m = m;
  103. }
  104.  
  105. int main()
  106. {
  107. cUlamek C(3, 4);
  108. cUlamek D;
  109.  
  110. D=D.dodawanie(C, C);
  111. D.wypisz();
  112. }
Success #stdin #stdout 0s 3096KB
stdin
Standard input is empty
stdout
540863466/540875339