/* Programma per semplificare frazioni */ #include /* Calcola MCD(a,b), con a>=0 e b>=0 */ //int mcd(int a, int b) /* Dati x>=0 e y>0, (*p)/(*q) e' la forma semplificata di x/y */ //void simplifyPos(int x, int y, int* p, int* q) /* Dati due interi x e y, con y!= 0, restituisce 1 se x/y > 0, 0 altrimenti */ //int isPositive(int x, int y) /* Restituisce |x| (valore assoluto di x) */ //int valAbs(int x) /* (*p)/(*q) e' la forma semplificata di x/y, dove y != 0 */ //void simplify(int x, int y, int* p, int* q) /************* MAIN DI PROVA *****************/ int main1(){ int a, b, c; printf("Inserire due interi --- > "); scanf("%d%d", &a,&b); c = mcd(a,b); printf("MCD(%d,%d) = %d\n", a, b,c ); return 0; } int main2(){ int a,b,c,d; printf("Inserire due interi --- > "); scanf("%d%d", &a, &b); if(b != 0){ // semplificare a/b facendo in modo che c/d sia il risultato // usare prima simplifyPos(), poi simplify() printf("%d/%d si semplifica in %d/%d \n", a,b,c,d); } else printf("Errore: il denominatore deve essere diverso da 0\n"); return 0; }