All pastes #256046 Raw Edit

Untitled

public cpp v1 · immutable
#256046 ·published 2006-11-23 18:30 UTC
rendered paste body
//#include<iostream>/* Deklaracja klasy i funkcji */class ulamek{        private:                int nwd(int a, int b);        public:                ulamek(int a, int b);                ulamek(const ulamek &model);                ulamek& skroc();                long int licznik;                long int mianownik;                /* operatory */                ulamek& operator*=(const ulamek &rhs);                ulamek& operator/=(const ulamek &rhs);                ulamek& operator+=(const ulamek &rhs);                ulamek& operator-=(const ulamek &rhs);                ulamek& operator= (const ulamek &rhs);};/* konstruktory */ulamek::ulamek(int a, int b=1):licznik(a), mianownik(b){}/***/ulamek::ulamek(const ulamek &model):licznik(model.licznik), mianownik(model.mianownik){};/* funkcje */int ulamek::nwd(int a, int b){        int wynik;        for(; ;){                if (b!=0){                        wynik = a % b;                        a = b;                        b = wynik;                }                else if (b==0){                        wynik = a;                        break;                }        }        return wynik;}/***/ulamek& ulamek::skroc(){        int dzielnik=nwd(licznik, mianownik);        licznik/=dzielnik;        mianownik/=dzielnik;        return (*this);}/* operatory */ulamek& ulamek::operator*=(const ulamek &rhs){        licznik *= rhs.licznik;        mianownik *= rhs.mianownik;        return (*this);}ulamek& ulamek::operator/=(const ulamek &rhs){        licznik *= rhs.mianownik;        mianownik *= rhs.licznik;        return (*this);}ulamek& ulamek::operator+=(const ulamek &rhs){        if(mianownik==rhs.mianownik)                licznik+=rhs.licznik;        else{                ulamek suma(rhs);                licznik*=suma.mianownik;                suma.licznik*=mianownik;                mianownik*=suma.mianownik;                licznik+=suma.licznik;        }        return (*this);}ulamek& ulamek::operator-=(const ulamek &rhs){        if(mianownik==rhs.mianownik)                licznik-=rhs.licznik;        else{                ulamek suma(rhs);                licznik*=suma.mianownik;                suma.licznik*=mianownik;                mianownik*=suma.mianownik;                licznik-=suma.licznik;        }        return (*this);}ulamek& ulamek::operator= (const ulamek &rhs){        licznik=rhs.licznik;        mianownik=rhs.mianownik;        return (*this);}