#include <string>
#include <iostream>
using namespace std;
class cUlamek
{
private:
int l, m;
public:
//Metody
void wypisz();
void pobierz();
void skroc();
cUlamek dodawanie(cUlamek X, cUlamek Y);
//cOsoba();
~cUlamek();
cUlamek();
cUlamek(int l, int m);
cUlamek(const cUlamek& abc);
};
void cUlamek::skroc()
{
int l, m, pom;
l = this->l;
m = this->m;
int max = l;
int min = m;
if (m > max) {
max = m;
min = l;
}
do {
pom = max % min;
max = min;
min = pom;
} while (pom != 0);
l = l / max;
m = m / max;
this->l = l;
this->m = m;
}
cUlamek::cUlamek()
{
this->l = 1;
this->m = 2;
}
cUlamek::cUlamek(const cUlamek& abc)
{
this->l = l;
this->m = m;
}
cUlamek cUlamek::dodawanie(cUlamek X, cUlamek Y)
{
cUlamek Z(l, m);
Z.l = X.l + Y.l;
Z.m = X.m + Y.m;
Z.skroc();
return Z;
}
void cUlamek::pobierz()
{
int l, m;
cout << "Wprowadz licznik: ";
cin >> l;
cout << "Wprowadz mianownik: ";
cin >> m;
cout << "\n";
this->l = l;
this->m = m;
}
void cUlamek::wypisz()
{
cout << l << "/" << m << "\n";
}
cUlamek::~cUlamek()
{
}
cUlamek::cUlamek(int l, int m)
{
this->l = l;
this->m = m;
}
int main()
{
cUlamek C(3, 4);
cUlamek D;
D=D.dodawanie(C, C);
D.wypisz();
}
I2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwogCmNsYXNzIGNVbGFtZWsKewogCnByaXZhdGU6CmludCBsLCBtOwogCnB1YmxpYzoKLy9NZXRvZHkKdm9pZCB3eXBpc3ooKTsKdm9pZCBwb2JpZXJ6KCk7CnZvaWQgc2tyb2MoKTsKY1VsYW1layBkb2Rhd2FuaWUoY1VsYW1layBYLCBjVWxhbWVrIFkpOwogCi8vY09zb2JhKCk7Cn5jVWxhbWVrKCk7CmNVbGFtZWsoKTsKY1VsYW1layhpbnQgbCwgaW50IG0pOwpjVWxhbWVrKGNvbnN0IGNVbGFtZWsmIGFiYyk7Cn07CiAKdm9pZCBjVWxhbWVrOjpza3JvYygpCnsKaW50IGwsIG0sIHBvbTsKIApsID0gdGhpcy0+bDsKbSA9IHRoaXMtPm07CiAKaW50IG1heCA9IGw7CmludCBtaW4gPSBtOwppZiAobSA+IG1heCkgewptYXggPSBtOwptaW4gPSBsOwp9CiAKZG8gewpwb20gPSBtYXggJSBtaW47Cm1heCA9IG1pbjsKbWluID0gcG9tOwp9IHdoaWxlIChwb20gIT0gMCk7CiAKbCA9IGwgLyBtYXg7Cm0gPSBtIC8gbWF4OwogCnRoaXMtPmwgPSBsOwp0aGlzLT5tID0gbTsKfQpjVWxhbWVrOjpjVWxhbWVrKCkKewp0aGlzLT5sID0gMTsKdGhpcy0+bSA9IDI7Cn0KY1VsYW1lazo6Y1VsYW1layhjb25zdCBjVWxhbWVrJiBhYmMpCnsKdGhpcy0+bCA9IGw7CnRoaXMtPm0gPSBtOwp9CiAKY1VsYW1layBjVWxhbWVrOjpkb2Rhd2FuaWUoY1VsYW1layBYLCBjVWxhbWVrIFkpCnsKY1VsYW1layBaKGwsIG0pOwoKCglaLmwgPSBYLmwgKyBZLmw7CglaLm0gPSBYLm0gKyBZLm07Clouc2tyb2MoKTsKIApyZXR1cm4gWjsKfQogCnZvaWQgY1VsYW1lazo6cG9iaWVyeigpCnsKaW50IGwsIG07CiAKY291dCA8PCAiV3Byb3dhZHogbGljem5pazogIjsKY2luID4+IGw7CiAKY291dCA8PCAiV3Byb3dhZHogbWlhbm93bmlrOiAiOwpjaW4gPj4gbTsKIApjb3V0IDw8ICJcbiI7CiAKdGhpcy0+bCA9IGw7CnRoaXMtPm0gPSBtOwp9CiAKdm9pZCBjVWxhbWVrOjp3eXBpc3ooKQp7CmNvdXQgPDwgbCA8PCAiLyIgPDwgbSA8PCAiXG4iOwp9CiAKY1VsYW1lazo6fmNVbGFtZWsoKQp7Cn0KIApjVWxhbWVrOjpjVWxhbWVrKGludCBsLCBpbnQgbSkKewp0aGlzLT5sID0gbDsKdGhpcy0+bSA9IG07Cn0KIAppbnQgbWFpbigpCnsKY1VsYW1layBDKDMsIDQpOwpjVWxhbWVrIEQ7CiAKRD1ELmRvZGF3YW5pZShDLCBDKTsKRC53eXBpc3ooKTsKfQ==