Intereses

Intereses

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

@SuppressWarnings("serial")
public class Interes extends JFrame implements ActionListener{
    
    private JLabel etiquetaInicial, etiquetaInteres;
    private JTextField campoInicial, campoInteres;
    private JButton boton;
    private JTextArea areaTexto;
    private int año=1;
    private double montoAnterior;
    
    public static void main(String[] args) {
        Interes marco = new Interes();
        marco.setSize(460,300);
        marco.crearGUI();
        marco.setVisible(true);
    }
    public void crearGUI(){
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        Container ventana = getContentPane();
        ventana.setLayout(new FlowLayout());
        
        etiquetaInicial = new JLabel("Escriba el monto inicial");
        ventana.add(etiquetaInicial);
        
        campoInicial = new JTextField(3);
        ventana.add(campoInicial);
        
        etiquetaInteres = new JLabel("Escriba la tasa de interes");
        ventana.add(etiquetaInteres);
        
        campoInteres = new JTextField(3);
        ventana.add(campoInteres);
        
        boton = new JButton("Otro año");
        ventana.add(boton);
        boton.addActionListener(this);
        
        areaTexto = new JTextArea(10,40);
        ventana.add(areaTexto);
        
        JScrollPane panelDesplazable = new JScrollPane(areaTexto);
        ventana.add(panelDesplazable);
    }
    public void actionPerformed(ActionEvent e){
        unAño();
    }
    private void unAño(){
        String nuevaLinea = "\r\n";
        double tasa, montoNuevo;
        int dolares, centavos;
        
        if(año==1){
            montoAnterior = Double.parseDouble(campoInicial.getText());
        }
        tasa = Double.parseDouble(campoInteres.getText());
        
        montoNuevo = montoAnterior+(montoAnterior*tasa/100);
        
        dolares = (int)montoNuevo;
        centavos = (int)Math.round(100*(montoNuevo-dolares));
        areaTexto.append("Despues de "+Integer.toString(año)+" años "
            +"el dinero se ha convertido en "
            +Integer.toString(dolares)+" dolar(es) y "
            +Integer.toString(centavos)+" centavo(s)"+nuevaLinea);
        montoAnterior = montoNuevo;
        año++;
    }
}