#include typedef struct{ int brojilac; int imenilac; } RAZLOMAK; void operacija_razl(RAZLOMAK r1, RAZLOMAK r2, RAZLOMAK *zbir, RAZLOMAK *proizv); RAZLOMAK skrati_razl(RAZLOMAK r); int main(){ RAZLOMAK r1, r2, zbir, proizv; printf("Unesite prvi razlomak u formatu brojilac/imenilac: "); scanf("%d/%d", &r1.brojilac, &r1.imenilac); printf("Unesite drugi razlomak u formatu brojilac/imenilac: "); scanf("%d/%d", &r2.brojilac, &r2.imenilac); operacija_razl(r1,r2,&zbir,&proizv); printf("Zbir je %d/%d\n",zbir.brojilac, zbir.imenilac); printf("Proizvod je %d/%d\n",proizv.brojilac, proizv.imenilac); return 0; } void operacija_razl(RAZLOMAK r1, RAZLOMAK r2, RAZLOMAK *zbir, RAZLOMAK *proizv){ (*proizv).brojilac=r1.brojilac*r2.brojilac; (*proizv).imenilac=r1.imenilac*r2.imenilac; (*zbir).brojilac=r1.brojilac*r2.imenilac+r2.brojilac*r1.imenilac; (*zbir).imenilac=r1.imenilac*r2.imenilac; *proizv=skrati_razl(*proizv); /* skrati razlomak ocekuje vrednost promenljive a ne njenu adresu */ *zbir=skrati_razl(*zbir); } RAZLOMAK skrati_razl(RAZLOMAK r){ return r; /* implementirati skracivanje razlomka koriscenjem ideje NZD-a ili neke druge ideje */ }