TOPIC

Wrong Answer (5%)

Matheus Teixeira asked 1 year ago

#include <stdio.h>

int main(){

    int N1, N2, D1, D2, i, j = 1, casos, numerador, denominador, num, den;
    char operador;

    scanf("%d", &casos);
    for(i = 0; i < casos; i++) {
        scanf("%d / %d %c %d / %d", &N1, &D1, &operador, &N2, &D2);
        if (operador == '+') {
            numerador = (N1*D2)+(N2*D1);
            denominador = D1*D2;
        }
        else if (operador == '-') {
            numerador = (N1*D2)-(N2*D1);
            denominador = D1*D2;
        }
        else if (operador == '*') {
            numerador = N1*N2;
            denominador = D1*D2;
        }
        else if (operador == '\\') {
            numerador = N1*D2;
            denominador = N2*D1;
        }
        num = numerador;
        den = denominador;
        for(j = 2; j < 100; j++) {
            if ((num%j == 0) && (den%j == 0)) { 
                while ((num%j == 0) && (den%j == 0)) {
                    num = num/j;
                    den = den/j;
                }
            }
        }
        if (numerador == 0) {printf("0 = 0\n");}
        else {
            printf("%d/%d = %d/%d\n", numerador, denominador, num, den);
        }
    }

    return 0;
}

This topic has not been answered yet. Be the first!

Remember not post solutions. Your post may be reviewed by our moderators.