Ślad: • 04_zad_ulamki

Zadanie - Klasa liczb wymiernych

Writing /home/grochu/public_html/wiki/data/cache/e/ebb78647cd3075fd1e6a973bb28f784a.i failed
Unable to save cache file. Hint: disk full; file permissions; safe_mode setting.
Writing /home/grochu/public_html/wiki/data/cache/e/ebb78647cd3075fd1e6a973bb28f784a.metadata failed
Writing /home/grochu/public_html/wiki/data/cache/d/db782e8f08e5d231199d457799b196b1.i failed
Writing /home/grochu/public_html/wiki/data/cache/d/db782e8f08e5d231199d457799b196b1.metadata failed
Writing /home/grochu/public_html/wiki/data/cache/e/ebb78647cd3075fd1e6a973bb28f784a.i failed
Unable to save cache file. Hint: disk full; file permissions; safe_mode setting.
Writing /home/grochu/public_html/wiki/data/cache/8/853a58590aab7a7f2def5cabc31140ee.xhtml failed

Dla operacji wykonywanych na obiektach klasy Wymierna dociąż operatory =,,=,+,+=,-,-=,== jako metody składowe tej klasy.

Wymierna w1(1,2), w2(3,4);
Wymierna x = w1 + w2;
Wymierna y = w1 * 3;
 
// itd.
 
if (w1 == w2) cout << "Liczby są identyczne" << endl;

Przeciąż operatory « i » jako funkcje zaprzyjaźnione z klasą Wymierna tak aby poprawne wczytywanie ze strumienia wejściowego i wypisywanie do strumienia wyjściowego:

Wymierna w(1,3);
cout << "Oto liczba " << w   << endl;

Przeciąż operator rzutowania obiektu typu Wymierna na typ double

Wymierna w1(5,6);
double x = w1 * 3.1;
Wymierna w3 = w1 + 3.1;