¿Qué hago mal? Ejercicio 101 C

Iniciado por LorDWolfharT, 8 Septiembre 2009, 15:21 PM

0 Miembros y 1 Visitante están viendo este tema.

LorDWolfharT

Buenas, he estado probando a hacer el ejercicio 100 y el 101... El 100 al final acabé mirando el error y ya supe de que es...

¿Alguien me puede decir dónde está el error y por qué no me hace las operaciones bien?

#include <stdio.h>
#include <conio.h>
main()
{
     int muno;
     int mdos;
     int mcinco;
     int mdiez;
     int mveinte;
     int mcincuenta;
     int muneu;
     int mdoseu;
     int bcinco;
     int bdiez;
     int bveinte;
     int bcincuenta;
     int bcien;
     int bdoscientos;
     int bquinientos;
     float a;
     float b;
     float c;
     float d;
     float e;
     float f;
     float g;
     float h;
     float i;
     float j;
     float k;
     float l;
     float m;
     float n;
     float o;
     float total;
     
     
     printf("Bienvenido al programa para arqueo de Maquinas Registradoras\n");
     printf("¿Cuantas monedas de un centimo tiene?\n");
     scanf("%d", &muno);
     printf("Vale, tiene %d moneda(s) de 1 centimo.\n", muno);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantas monedas de dos centimos tiene?\n");
     scanf("%d", &mdos);
     printf("Vale, tiene %d moneda(s) de 2 centimos.\n", mdos);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantas monedas de cinco centimos tiene?\n");
     scanf("%d", &mcinco);
     printf("Vale, tiene %d moneda(s) de 5 centimos\n", mcinco);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantas monedas de diez centimos tiene?\n");
     scanf("%d", &mdiez);
     printf("Vale, tiene %d moneda(s) de 10 centimos\n", mdiez);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantas monedas de veinte centimos tiene?\n");
     scanf("%d", &mveinte);
     printf("Vale, tiene %d moneda(s) de 20 centimos\n", mveinte);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantas monedas de cincuenta centimos tiene?\n");
     scanf("%d", &mcincuenta);
     printf("Vale, tiene %d moneda(s) de 50 centimos\n", mcincuenta);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantas monedas de un euro tiene?\n");
     scanf("%d", &muneu);
     printf("Vale, tiene %d moneda(s) de 1 euro\n", muneu);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantas monedas de dos euros tiene?\n");
     scanf("%d", &mdoseu);
     printf("Vale, tiene %d moneda(s) de 2 euros\n", mdoseu);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantos billetes de cinco euros tiene?\n");
     scanf("%d", &bcinco);
     printf("Vale, tiene %d billete(s) de 5 euros\n", bcinco);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantos billetes de diez euros tiene?\n");
     scanf("%d", &bdiez);
     printf("Vale, tiene %d billete(s) de 10 euros\n", bdiez);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantos billetes de veinte euros tiene?\n");
     scanf("%d", &bveinte);
     printf("Vale, tiene %d billete(s) de 20 euros\n", bveinte);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantos billetes de cincuenta euros tiene?\n");
     scanf("%d", &bcincuenta);
     printf("Vale, tiene %d billete(s) de 50 euros\n", bcincuenta);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantos billetes de cien euros tiene?\n");
     scanf("%d", &bcien);
     printf("Vale, tiene %d billete(s) de 100 euros\n", bcien);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantos billetes de doscientos euros tiene?\n");
     scanf("%d", &bdoscientos);
     printf("Vale, tiene %d billete(s) de 200 euros\n", bdoscientos);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     printf("¿Cuantos billetes de quinientos euros tiene?\n");
     scanf("%d", &bquinientos);
     printf("Vale, tiene %d billete(s) de 500 euros\n", bquinientos);
     printf("Presione cualquier tecla para continuar...\n");
     getch();
     a = muno * 0.01;
     b = mdos * 0.02;
     c = mcinco * 0.05;
     d = mdiez * 0.10;
     e = mveinte * 0.20;
     f = mcincuenta * 0.50;
     g = muneu * 1;
     h = mdoseu * 2;
     i = bcinco * 5;
     j = bdiez * 10;
     k = bveinte * 20;
     l = bcincuenta * 50;
     m = bcien * 100;
     n = bdoscientos * 200;
     o = bquinientos * 500;
     total = a + b + c + d + e + f + g + h + i + j + k + l + m + n + o;
     printf("Tienes %d euros en monedas de 1 centimo.\n", a);
     printf("Tienes %d euros en monedas de 2 centimos.\n", b);
     printf("Tienes %d euros en monedas de 5 centimos.\n", c);
     printf("Tienes %d euros en monedas de 10 centimos.\n", d);
     printf("Tienes %d euros en monedas de 20 centimos.\n", e);
     printf("Tienes %d euros en monedas de 50 centimos.\n", f);
     printf("Tienes %d euros en monedas de 1 euro.\n", g);
     printf("Tienes %d euros en monedas de 2 euros.\n", h);
     printf("Tienes %d euros en billetes de 5 euros.\n", i);
     printf("Tienes %d euros en billetes de 10 euros.\n", j);
     printf("Tienes %d euros en billetes de 20 euros.\n", k);
     printf("Tienes %d euros en billetes de 50 euros.\n", l);
     printf("Tienes %d euros en billetes de 100 euros.\n", m);
     printf("Tienes %d euros en billetes de 200 euros.\n", n);
     printf("Tienes %d euros en billetes de 500 euros.\n", o);
     printf("Pulsa cualquier tecla para saber el total...\n");
     getch();
     printf("Tienes %d euros en total.\n", total);
     printf("Pulsa cualquier tecla para salir del programa...\n");
     getch();
     return 0;
}

     

Gracias, Salu2

LorDWolfharT

Buenas, dejo el error solucionado, por si alguien lo necesita. Era un error tonto, simplemente en vez de %d en el total, al ser un FLOAT hay que usar %f... Salu2