TEMA

erro de 10%

refcassiolato preguntado 6 years ago

Meu código está dando erro de 10%, alguem consegue me mandar umas combinacoes para eu testar e ver aonde está o erro?

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

int vitamins(char alimento[16]) { char alimentoF1[16]; char alimentoF2[16]; char alimentoF3[16]; char alimentoF4[16]; char alimentoF5[16]; char alimentoF6[16]; char *alimentoF7[16];

strcpy(alimentoF1, "suco de laranja");
strcpy(alimentoF2, "morango fresco");
strcpy(alimentoF3, "mamao");
strcpy(alimentoF4, "goiaba vermelha");
strcpy(alimentoF5, "manga");
strcpy(alimentoF6, "laranja");
strcpy(alimentoF7, "brocolis");

if(!strcmp(alimentoF1, alimento))
    return 1;

else if(!strcmp(alimentoF2, alimento))
    return 2;

else if(!strcmp(alimentoF3, alimento))
    return 3;

else if(!strcmp(alimentoF4, alimento))
    return 4;

else if(!strcmp(alimentoF5, alimento))
    return 5;

else if(!strcmp(alimentoF6, alimento))
    return 6;

else if(!strcmp(alimentoF7, alimento))
    return 7;

else
    return 0;

}

int compare(int temp) { if(temp == 1) { return 120; }

else if(temp == 2)
{
    return 85;
}

else if(temp == 3)
{
    return 85;
}

else if(temp == 4)
{
    return 70;
}

else if(temp == 5)
{
    return 56;
}

else if(temp == 6)
{
    return 50;
}

else if(temp == 7)
{
    return 34;
}

}

int main () { int T = 0, i = 0, a = 0, total = 0, mud = 0; int temp[6] = {0 , 0 , 0 , 0 , 0, 0, 0}; int qtd[6] = {0,0,0,0,0,0,0};

char *alimento[16];

scanf("%d", &T);

do{
    scanf("%d ", &qtd[i]);

    gets(alimento);

    temp[i] = vitamins(alimento);
    i++;
}while(i < T);

for(i = 0; i < T; i++)
{
    total+= (compare(temp[i]) * qtd[i]);
}

if(total < 110)
{
    mud = 110 - total;
    printf("Mais %d mg", mud);
}

else if(total >= 110 && total <= 130)
{
    printf("%d mg", total);
}

else if(total > 130)
{
    mud = total - 130;
    printf("Menos %d mg", mud);
}

return 0;

}

Recuerda no enviar soluciones. Tu mensaje puede ser revisado por nuestros moderadores.

  • tmagalhaes0 respondido 6 years ago

    Não sei se é só isso, mas percebi que falta uma quebra de linha no final de cada printf.