#include using namespace std; class Rational { private: int licznik; int mianownik; public: Rational(); // prototyp konstruktora domyslnego Rational(int); Rational(int, int); double wartosc() const; void wypisz() const; Rational pomnoz(int); void set_licznik(int); void set_mianownik(int); int get_licznik() const; int get_mianownik() const; }; Rational::Rational() // ten konstruktor (domyslny) tworzy liczbe wymierna równa 1 { licznik = 1; mianownik = 1; } Rational::Rational(int liczba) { licznik = liczba; mianownik = 1; } Rational::Rational(int l, int m) { licznik = l; mianownik = m; } double Rational::wartosc() const { return 1.0 * licznik / mianownik; } void Rational::wypisz() const { cout << licznik << "/" << mianownik; } void Rational::set_licznik(int l) { licznik = l; } void Rational::set_mianownik(int m) { mianownik = m; } int Rational::get_licznik() const {return licznik;} int Rational::get_mianownik() const {return mianownik;} int main() { Rational liczba; // wywolujemy konstruktor domyslny liczba.wypisz(); liczba.set_licznik(1); liczba.set_mianownik(2); cout << endl; liczba.wypisz(); cout << " = " << liczba.wartosc() << endl; Rational liczba2(5); // wywolujemy konstruktor z jednym argumentem liczba2.wypisz(); cout << " = " << liczba2.wartosc() << endl; Rational liczba3(5, 14); // wywolujemy konstruktor z dwoma argumentami liczba3.wypisz(); cout << " = " << liczba3.wartosc() << endl; cout << liczba.get_licznik() << endl; const Rational stala(3,5); cout << stala.wartosc() << endl; return 0; }