Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- using namespace std;
- int NWD(int, int);/**PROTOTYP FUNKCJI*/
- int NWW(int, int);/**PROTOTYP FUNKCJI*/
- class ulamek{
- private:
- int licznik;/**pole wewnêtrzne*/
- int mianownik;/**pole wewnêtrzne*/
- public:
- void skroc(){int c=NWD(licznik,mianownik);licznik/=c;mianownik/=c;}/**metoda publiczna*/
- ulamek(){}/**konstruktor bezargumentowy*/
- ulamek(int l, int m){licznik=l, mianownik=m;}/**konstruktor inicjujacy*/
- void setMianownik(int m){mianownik=m;}/**seter do mianownika*/
- int getMianownik(){return mianownik;}/**geter do mianownika*/
- void setLicznik(int l){licznik=l;}/**seter do licznika*/
- int getLicznik(){return licznik;}/**geter do licznika*/
- void print(){cout<<licznik<<"/"<<mianownik<<endl;}/**metoda publiczna*/
- ulamek operator + ( const ulamek & v)
- {
- int l3,m3;
- m3=NWW(this ->mianownik,v.mianownik);
- l3=m3/this->mianownik*this->licznik+m3/v.mianownik*v.licznik;
- return ulamek(l3,m3);
- }
- ulamek operator - (const ulamek & v)
- {
- int l3,m3;
- m3=NWW(this->mianownik,v.mianownik);
- l3=m3/this->mianownik*this->licznik-m3/v.mianownik*v.licznik;
- return ulamek(l3,m3);
- }
- };
- int main(){
- /**Utwórz dwa ułamki 3/4 i 12/32
- wyświetl każdy z nich,
- wyświetl mianownik ułamka drugiego
- skróć ułamek drugi
- wyświetl ułamek drugi po skróceniu
- zmień licznik ułamka pierwszego na 6
- wyświetl oba ułamki
- skróć ułamek pierwszy
- wyświetl ułamek pierwszy po skróceniu
- */
- ulamek u1(2,3), u2(6,8),u3;
- u1.print();
- u2.print();
- u2.skroc();
- u2.print();
- u3=u1+u2;
- cout<<"u1+u2= ";
- u3.print();
- u3=u1-u2;
- cout<<"u1-u2= ";
- u3.print();
- return 0;}
- int NWD(int a, int b){
- if(b!=0)return NWD(b,a%b);
- return a;}
- NWW(int a,int b){
- return a/NWD(a,b)*b;}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement