Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <iostream>
- #include <string>
- #include <vector>
- #include <algorithm>
- using namespace std;
- struct Razlomak {
- int brojnik;
- int nazivnik;
- void Ispisi(){
- cout << brojnik << "/"<<nazivnik;
- }
- };
- Razlomak operator +(Razlomak x, Razlomak y) {
- Razlomak z;
- int manji;
- int veci;
- int veci1;
- int manji1;
- z.brojnik = x.brojnik * y.nazivnik + y.brojnik * x.nazivnik;
- z.nazivnik = x.nazivnik * y.nazivnik;
- if (z.brojnik < z.nazivnik)
- {manji = z.brojnik;
- veci = z.nazivnik;
- manji1 = z.brojnik;
- veci1 = z.nazivnik;
- }
- else
- {veci = z.brojnik;
- manji = z.nazivnik;}
- for (int i=manji/2; i>0; i--)
- {if ((manji %i == 0) && (veci %i == 0))
- {manji = manji / i;
- veci = veci / i;}
- break;}
- if ((manji1 == z.brojnik)&&(veci1 == z.nazivnik))
- {
- z.brojnik = manji;
- z.nazivnik = veci;
- }
- else
- {
- z.brojnik = veci;
- z.nazivnik = manji;
- }
- return z;
- }
- Razlomak operator-(Razlomak x, Razlomak y){
- Razlomak z;
- int manji;
- int veci;
- int veci1;
- int manji1;
- z.brojnik = x.brojnik * y.nazivnik - y.brojnik * x.nazivnik;
- z.nazivnik = x.nazivnik * y.nazivnik;
- if (z.brojnik < z.nazivnik)
- {manji = z.brojnik;
- veci = z.nazivnik;
- manji1 = z.brojnik;
- veci1 = z.nazivnik;
- }
- else
- {veci = z.brojnik;
- manji = z.nazivnik;}
- for (int i=manji/2; i>0; i--)
- {if ((manji %i == 0) and (veci %i == 0))
- {manji = manji / i;
- veci = veci / i;}
- break;}
- if ((manji1 == z.brojnik)&&(veci1 == z.nazivnik))
- {
- z.brojnik = manji;
- z.nazivnik = veci;
- }
- else
- {
- z.brojnik = veci;
- z.nazivnik = manji;
- }
- return z;
- }
- Razlomak operator*(Razlomak x, Razlomak y){
- Razlomak z;
- int manji;
- int veci;
- int veci1;
- int manji1;
- z.brojnik = x.brojnik * y.brojnik;
- z.nazivnik = x.nazivnik * y.nazivnik;
- if (z.brojnik < z.nazivnik)
- {manji = z.brojnik;
- veci = z.nazivnik;
- manji1 = z.brojnik;
- veci1 = z.nazivnik;
- }
- else
- {veci = z.brojnik;
- manji = z.nazivnik;}
- for (int i=manji/2; i>0; i--)
- {if ((manji %i == 0) and (veci %i == 0))
- {manji = manji / i;
- veci = veci / i;}
- break;}
- if ((manji1 == z.brojnik)&&(veci1 == z.nazivnik))
- {
- z.brojnik = manji;
- z.nazivnik = veci;
- }
- else
- {
- z.brojnik = veci;
- z.nazivnik = manji;
- }
- return z;
- }
- //Ne radi ˘˘˘˘˘
- /*Razlomak Skrati(Razlomak z){
- int manji;
- int veci;
- int veci1;
- int manji1;
- if (z.brojnik < z.nazivnik)
- {manji = z.brojnik;
- veci = z.nazivnik;
- manji1 = z.brojnik;
- veci1 = z.nazivnik;
- }
- else
- {veci = z.brojnik;
- manji = z.nazivnik;}
- for (int i=manji/2; i>0; i--)
- {if ((manji %i == 0) and (veci %i == 0))
- {manji = manji / i;
- veci = veci / i;}
- break;}
- if ((manji1 == z.brojnik)&&(veci1 == z.nazivnik))
- { z.brojnik = manji;
- z.nazivnik = veci;
- return (z.brojnik, z.nazivnik);
- }
- else
- {
- z.brojnik = veci;
- z.nazivnik = manji;
- return (z.brojnik, z.nazivnik);
- }
- }*/
- Razlomak operator/(Razlomak x, Razlomak y){
- Razlomak z;
- int manji;
- int veci;
- int veci1;
- int manji1;
- z.brojnik = x.brojnik * y.nazivnik;
- z.nazivnik = x.nazivnik * y.brojnik;
- if (z.brojnik < z.nazivnik)
- {manji = z.brojnik;
- veci = z.nazivnik;
- manji1 = z.brojnik;
- veci1 = z.nazivnik;
- }
- else
- {veci = z.brojnik;
- manji = z.nazivnik;}
- for (int i=manji/2; i>0; i--)
- {if ((manji %i == 0) and (veci %i == 0))
- {manji = manji / i;
- veci = veci / i;}
- break;}
- if ((manji1 == z.brojnik)&&(veci1 == z.nazivnik))
- {
- z.brojnik = manji;
- z.nazivnik = veci;
- }
- else
- {
- z.brojnik = veci;
- z.nazivnik = manji;
- }
- return z;
- }
- int main() {
- Razlomak a;
- Razlomak c;
- cout << "Unesite prvi razlomak (brojnik pa nazivnik, bez '/'): ";
- cin >> a.brojnik;
- cout << "/";
- cin >> a.nazivnik;
- cout << endl;
- Razlomak b;
- cout << "Unesite drugi razlomak (brojnik pa nazivnik, bez '/'): ";
- cin >> b.brojnik;
- cout << "/";
- cin >> b.nazivnik;
- cout << endl<<endl<<endl;
- a.Ispisi();
- cout << " + ";
- b.Ispisi();
- cout<<" = ";
- c = a+b;
- c.Ispisi();
- cout << endl<<endl<<endl;
- a.Ispisi();
- cout << " - ";
- b.Ispisi();
- cout<<" = ";
- c = a-b;
- c.Ispisi();
- cout << endl<<endl<<endl;
- a.Ispisi();
- cout << " * ";
- b.Ispisi();
- cout<<" = ";
- c = a*b;
- c.Ispisi();
- cout << endl<<endl<<endl;
- a.Ispisi();
- cout << " / ";
- b.Ispisi();
- cout<<" = ";
- c = a/b;
- c.Ispisi();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement