• Lenguaje

    Pascal

  • Descripción

    Algoritmo que calcula el desglose mínimo en billetes y monedas de una cantidad exacta de euros.
    Hay billetes de 500, 200, 100, 50, 20, 10 y 5 euros.
    Hay monedas de 2 y 1 euros.
    Por ejemplo: El desglose de 434 euros mostrará lo siguiente:
    2 billetes de 200
    1 billete de 20
    1 billete de 10
    2 monedas de 2 euros

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
31
32
33
34
35
36
37
38
program DesgloseMinimoEnBilletesYMonedas;
uses crt;

var billetes_de_10, billetes_de_100, billetes_de_20, billetes_de_200, billetes_de_5 : integer;
var billetes_de_50, billetes_de_500, cantidad_de_euros, monedas_de_1, monedas_de_2 : integer;
begin
    write ('Ingresa el valor de cantidad de euros: ');
    readln (cantidad_de_euros);
    monedas_de_1 := cantidad_de_euros;
    billetes_de_500 := (monedas_de_1-monedas_de_1 mod 500) div 500;
    monedas_de_1 := monedas_de_1 mod 500;
    billetes_de_200 := (monedas_de_1-monedas_de_1 mod 200) div 200;
    monedas_de_1 := monedas_de_1 mod 200;
    billetes_de_100 := (monedas_de_1-monedas_de_1 mod 100) div 100;
    monedas_de_1 := monedas_de_1 mod 100;
    billetes_de_50 := (monedas_de_1-monedas_de_1 mod 50) div 50;
    monedas_de_1 := monedas_de_1 mod 50;
    billetes_de_20 := (monedas_de_1-monedas_de_1 mod 20) div 20;
    monedas_de_1 := monedas_de_1 mod 20;
    billetes_de_10 := (monedas_de_1-monedas_de_1 mod 10) div 10;
    monedas_de_1 := monedas_de_1 mod 10;
    billetes_de_5 := (monedas_de_1-monedas_de_1 mod 5) div 5;
    monedas_de_1 := monedas_de_1 mod 5;
    monedas_de_2 := (monedas_de_1-monedas_de_1 mod 2) div 2;
    monedas_de_1 := monedas_de_1 mod 2;
    writeln ('Valor de billetes de 10: ', billetes_de_10);
    writeln ('Valor de billetes de 100: ', billetes_de_100);
    writeln ('Valor de billetes de 20: ', billetes_de_20);
    writeln ('Valor de billetes de 200: ', billetes_de_200);
    writeln ('Valor de billetes de 5: ', billetes_de_5);
    writeln ('Valor de billetes de 50: ', billetes_de_50);
    writeln ('Valor de billetes de 500: ', billetes_de_500);
    writeln ('Valor de monedas de 1: ', monedas_de_1);
    writeln ('Valor de monedas de 2: ', monedas_de_2);
    writeln;
    write ('Presiona una tecla para terminar . . . ');
    readkey;
end.