Evo kod u C-u koji radi samo ako su oba broja pozitivna....
Code:
#include <stdio.h>
#include <math.h>
typedef struct razlomak{
int brojnik;
int nazivnik;
}razlomak;
int rp(int n, int m);
int main(void){
razlomak prvi, drugi,rj;
int tmp,n,m;
scanf ("%d/%d+%d/%d",&prvi.brojnik,&prvi.nazivnik,&drugi.brojnik,&drugi.nazivnik);
rj.nazivnik=abs(prvi.nazivnik)*abs(drugi.nazivnik);
rj.brojnik=abs(drugi.nazivnik)*abs(prvi.brojnik)+abs(prvi.nazivnik)*abs(drugi.brojnik);
n=rj.brojnik;
m=rj.nazivnik;
tmp=rp(n,m);
rj.brojnik/=tmp;
rj.nazivnik/=tmp;
printf ("%d/%d\n",rj.brojnik,rj.nazivnik);
return 0;
}
int rp(int n, int m){
int tmp;
while (n){
if (n<m){tmp=n;n=m;m=tmp;}
n-=m;
}
return m;
}
#include <D3adly.h>