lunes, 3 de agosto de 2009

47

4


import java.awt.*;
import java.awt.event.*;
public class Funciones extends java.applet.Applet
{
TextField tn1=new TextField(8);
TextField tn2=new TextField(8);
TextField tres=new TextField(10);
List lista=new List ();
Button boton=new Button("calcular");
//iniciar el applet
public void init()
{
try
{
jblnit();
}
catch(Exception e)
{
e.printStackTrace();
}
}
//Iniciañizacion del componente
private void jblnit()throws Exception
{
//se añaden items a la lista
lista.add("Media");
lista.add("Producto");
lista.add("División");
lista.add("Resta");
lista.add("Suma");
//Indico objetos gestores de eventos
boton.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e)
{
boton_actionPerformed(e);
}
});
lista.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e)
{
lista_actionPerformed(e);
}
});
//Campo de resultados;fondo azul no editable
tres.setBackground(Color.cyan);
tres.setEditable(false);
add(tn1);
add(tn2);
add(tres);
add(lista);
add(boton);
}
void boton_actionPerformed(ActionEvent e)
{
calcular();
}
void lista_actionPerformed(ActionEvent e)
{
calcular();
}
void calcular()
{
try
{
//obtenemos operandos
double op1=Double.parseDouble(tn1.getText());
double op2=Double.parseDouble(tn2.getText());
switch(lista.getSelectedIndex())
{
case 0:
{
tres.setText(String.valueOf((op1+op2)/2));//media
break;
}
case 1:
{
tres.setText(String.valueOf(op1*op2));//multiplica
break;
}
case 2:
{
//caso de indeterminacion
if(op1==0&&op2==0)
{
tres.setText("INDETERMINACION");
}
else
{
//caso infinito
if(op2==0)
{
tres.setText("Infinito");
}
else
{
//caso normal
tres.setText(String.valueOf(op1/op2));//divide
}
}
break;
}
case 3:
{
tres.setText(String.valueOf(op1-op2));
break;
}
case 4:
{
tres.setText(String.valueOf(op1+op2));
break;
}
}
}//fin del try
catch(java.lang.NumberFormatException e)
{
tres.setText("ERROR");
}
}//FIN DEL METODO CALCULAR
}//FIN DE LA CLASE

No hay comentarios:

Publicar un comentario