Lenguaje C
Descripción Disponemos de una máquina que puede dar cambio con 5 tipos de monedas distintas: 20, 10, 5, 2 y 1 pesos. Dado el precio del artículo y la cantidad entregada por el consumidor indicar el cambio a entregar empleando el menor número posible de monedas.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
#include <stdlib.h>

int main (void)
{
    int cambio, cantidad_entregada, monedas_de_1, monedas_de_10, monedas_de_2, monedas_de_20, monedas_de_5, precio_del_articulo;
    printf ("Ingrese el valor de cantidad entregada: ");
    scanf ("%d", &cantidad_entregada);
    printf ("Ingrese el valor de precio del articulo: ");
    scanf ("%d", &precio_del_articulo);
    cambio=cantidad_entregada-precio_del_articulo;
    monedas_de_1=cambio;
    monedas_de_20=(monedas_de_1-monedas_de_1%20)/20;
    monedas_de_1=monedas_de_1%20;
    monedas_de_10=(monedas_de_1-monedas_de_1%10)/10;
    monedas_de_1=monedas_de_1%10;
    monedas_de_5=(monedas_de_1-monedas_de_1%5)/5;
    monedas_de_1=monedas_de_1%5;
    monedas_de_2=(monedas_de_1-monedas_de_1%2)/2;
    monedas_de_1=monedas_de_1%2;
    printf ("Valor de cambio: %d\n", cambio);
    printf ("Valor de monedas de 1: %d\n", monedas_de_1);
    printf ("Valor de monedas de 10: %d\n", monedas_de_10);
    printf ("Valor de monedas de 2: %d\n", monedas_de_2);
    printf ("Valor de monedas de 20: %d\n", monedas_de_20);
    printf ("Valor de monedas de 5: %d\n", monedas_de_5);
    putchar ('\n');
    system ("pause");
    return EXIT_SUCCESS;
}