Jakub Kucharski AiZ A3 79958
Program Przeciążeń operatorowych ( działania na ułamkach zwykłych )
#include<iostream>
#include<conio.h>
class ulamek1
{
int licznik;
int mianownik;
public:
void ustaw(int a,int b)
licznik=a;
mianownik=b;
}
void pokaz()
std::cout<<licznik<<"/"<<mianownik;
friend ulamek1 operator*(ulamek1,ulamek1);
};
ulamek1 operator*(ulamek1 a, ulamek1 b)
ulamek1 c;
c.licznik=a.licznik*b.licznik;
c.mianownik=a.mianownik*b.mianownik;
return c;
class ulamek2
friend ulamek2 operator*(ulamek2,ulamek2);
ulamek2 operator*(ulamek2 a, ulamek2 b)
ulamek2 c;
c.licznik=(a.licznik*b.mianownik)+(a.mianownik*b.licznik);
class ulamek3
friend ulamek3 operator*(ulamek3,ulamek3);
ulamek3 operator*(ulamek3 a, ulamek3 b)
ulamek3 c;
c.licznik=(a.licznik*b.mianownik)-(a.mianownik*b.licznik);
class ulamek4
friend ulamek4 operator*(ulamek4,ulamek4);
ulamek4 operator*(ulamek4 a, ulamek4 b)
ulamek4 c;
c.licznik=a.licznik*b.mianownik;
c.mianownik=a.mianownik*b.licznik;
int main()
int x,y,w,z,p;
std::cout<<"podaj licznik i mianownik pierwszego ulamka";
std::cin>>x;
std::cout<<"/";
std::cin>>y;
std::cout<<"podaj licznik i mianownik drugiego ulamka";
std::cin>>w;
std::cin>>z;
std::cout<<"1-mnozenie, 2-dzielenie, 3-dodawanie, 4-odejmowanie";
std::cin>>p;
if(p==1){
ulamek1 a,b,c;
a.ustaw(x,y);
b.ustaw(w,z);
c=a*b;
std::cout<<"wynik mnozenia to:";
c.pokaz();
else if(p==4){
ulamek3 a,b,c;
std::cout<<"wynik odejmowania to:";
else if(p==2){
ulamek4 a,b,c;
std::cout<<"wynik dzielenia to:";
else if(p==3){
ulamek2 a,b,c;
std::cout<<"wynik dodawania to:";
else
std::cout<<"wcisniety niepoprawny klawisz, do widzenia";
getch();
kubix