• Lenguaje

    Java usando AWT

  • Descripción

    Permite realizar el retiro de dinero de un cajero electrónico, una vez indicado el monto en múltiplos de 10.000 el programa debe indicar cuál es la cantidad mínima de billetes que debe entregar el cajero. Ejemplo Cantidad $ 80.000 entrega:
    1. 50.000
    1. de 20.000
    1. de 10.000
    Sólo debe calcular con cantidad válida de billetes.

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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import java.awt.*;
import java.awt.event.*;

public class RetiroDeUnCajeroElectronico extends Frame implements ActionListener {

    private static final long serialVersionUID = 1L;
    private TextField field_retiro;
    private Label label_billetes_de_10000, label_billetes_de_20000, label_billetes_de_50000;
    private Button button;

    public Algoritmo() {
        field_retiro = new TextField(4);
        label_billetes_de_10000 = new Label();
        label_billetes_de_20000 = new Label();
        label_billetes_de_50000 = new Label();
        button = new Button("Procesar");
        setLayout(new BorderLayout());
        Panel panel, subpanel;
        panel = new Panel(new BorderLayout());
        subpanel = new Panel(new GridLayout(1, 1));
        subpanel.add(new Label("Ingresa el valor de retiro:"));
        panel.add(subpanel, BorderLayout.WEST);
        subpanel = new Panel(new GridLayout(1, 1));
        subpanel.add(field_retiro);
        panel.add(subpanel);
        add(panel, BorderLayout.NORTH);
        panel = new Panel(new FlowLayout());
        panel.add(button);
        add(panel);
        panel = new Panel(new BorderLayout());
        subpanel = new Panel(new GridLayout(3, 1));
        subpanel.add(new Label("Valor de billetes de 10000:"));
        subpanel.add(new Label("Valor de billetes de 20000:"));
        subpanel.add(new Label("Valor de billetes de 50000:"));
        panel.add(subpanel, BorderLayout.WEST);
        subpanel = new Panel(new GridLayout(3, 1));
        subpanel.add(label_billetes_de_10000);
        subpanel.add(label_billetes_de_20000);
        subpanel.add(label_billetes_de_50000);
        panel.add(subpanel);
        add(panel, BorderLayout.SOUTH);
        button.addActionListener(this);
    }

    @Override
    public void actionPerformed(ActionEvent actionEvent) {
        int billetes_de_10000, billetes_de_20000, billetes_de_50000, retiro;
        try {
            retiro = Integer.parseInt(field_retiro.getText());
        } catch (NumberFormatException numberFormatException) {
            return;
        }
        billetes_de_10000=(retiro-retiro%10000)/10000;
        billetes_de_50000=(billetes_de_10000-billetes_de_10000%5)/5;
        billetes_de_10000=billetes_de_10000%5;
        billetes_de_20000=(billetes_de_10000-billetes_de_10000%2)/2;
        billetes_de_10000=billetes_de_10000%2;
        label_billetes_de_10000.setText(String.valueOf(billetes_de_10000));
        label_billetes_de_20000.setText(String.valueOf(billetes_de_20000));
        label_billetes_de_50000.setText(String.valueOf(billetes_de_50000));
        pack();
    }

    public static void main(String[] args) {
        Algoritmo algoritmo = new Algoritmo();
        algoritmo.pack();
        algoritmo.setLocationRelativeTo(null);
        algoritmo.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });
        algoritmo.setVisible(true);
    }

}