• Lenguaje

    Java usando AWT

  • Descripción

    Capturar un dato numérico entero que calculará las operaciones de un circulo, de acuerdo a las reglas de negocios que se describen a continuación:
    Calcular la longitud de la circunferencia, perímetro del círculo y área del círculo.

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
import java.awt.*;
import java.awt.event.*;

public class AreaYPerimetroDeUnCirculo extends Frame implements ActionListener {

    private static final long serialVersionUID = 1L;
    private TextField field_radio;
    private Label label_area, label_circunferencia, label_perimetro;
    private Button button;

    public Algoritmo() {
        field_radio = new TextField(4);
        label_area = new Label();
        label_circunferencia = new Label();
        label_perimetro = 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 radio:"));
        panel.add(subpanel, BorderLayout.WEST);
        subpanel = new Panel(new GridLayout(1, 1));
        subpanel.add(field_radio);
        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 area:"));
        subpanel.add(new Label("Valor de circunferencia:"));
        subpanel.add(new Label("Valor de perimetro:"));
        panel.add(subpanel, BorderLayout.WEST);
        subpanel = new Panel(new GridLayout(3, 1));
        subpanel.add(label_area);
        subpanel.add(label_circunferencia);
        subpanel.add(label_perimetro);
        panel.add(subpanel);
        add(panel, BorderLayout.SOUTH);
        button.addActionListener(this);
    }

    @Override
    public void actionPerformed(ActionEvent actionEvent) {
        double area, circunferencia, perimetro, radio;
        try {
            radio = Double.parseDouble(field_radio.getText());
        } catch (NumberFormatException numberFormatException) {
            return;
        }
        circunferencia=2.0*Math.PI*radio;
        perimetro=circunferencia;
        area=Math.PI*radio*radio;
        label_area.setText(String.valueOf(area));
        label_circunferencia.setText(String.valueOf(circunferencia));
        label_perimetro.setText(String.valueOf(perimetro));
        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);
    }

}