#include "razlomak.hpp" void Razlomak::postaviBrojilac(int i) { _brojilac = i; } void Razlomak::postaviImenilac(int i) { _imenilac = i; } int Razlomak::vratiBrojilac() const { return _brojilac; } int Razlomak::vratiImenilac() const { return _imenilac; } void Razlomak::pisi(ostream &izlaz) const { izlaz << _brojilac << "/" << _imenilac; return; } void Razlomak::citaj(istream &ulaz) { char c; ulaz >> _brojilac >> c >> _imenilac; if (c != '/') throw "Neuspesno ucitavanje razlomka"; return; } Razlomak Razlomak::operator+(const Razlomak &r) const { Razlomak zbir(_brojilac * r._imenilac + _imenilac * r._brojilac, _imenilac * r._imenilac); return zbir; } Razlomak Razlomak::operator++() { _brojilac += _imenilac; return *this; } Razlomak Razlomak::operator++(int) { Razlomak tmp = *this; _brojilac += _imenilac; return tmp; } Razlomak::operator double() const { return (double)_brojilac / _imenilac; } ostream& operator<<(ostream& izlaz, const Razlomak &r) { r.pisi(izlaz); return izlaz; } istream& operator>>(istream& ulaz, Razlomak &r) { r.citaj(ulaz); return ulaz; }