Retroceder   Foros del Web > Programación para sitios web > Java y JSP

Respuesta
 
Herramientas Desplegado
Antiguo 03-oct-2006, 19:37   #1 (permalink)
cybergatita no se puede cailificar en este momento
 
Fecha de Ingreso: octubre-2005
Mensajes: 17
Consulta calculator

Hola chicos,, que tal

Quisiera que mi calculadora hiciera lo siguiente
4+5-6*3

que cuando yo presionara 4+5 y luego presiona el signo de "-" me muestre el resultado de 4+5 y a eso se le reste el 6 ,,,

como si fuese las calculadoras normales de mano,,
ojala puedan asesorarme,,


saludos










import java.awt.*;
import java.awt.event.*;
import java.applet.*;


public class prueba extends Applet
{


Button bn[]=new Button[11];
Button bn2[]=new Button[5];
Button igual=new Button("=");
Button pto=new Button(".");
TextField txt1=new TextField(25);
double num1=0;
double num2=0;
double res=0;
Label dis = new Label("");
boolean equals = false;
String d;
int word=1;
char ope;
public prueba()
{
setLayout(new FlowLayout());
int i;
for (i=0;i<bn.length;i++)
{
bn[i]=new Button(String.valueOf(+i));
bn[i].addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
Numero(e);
}
});
add(bn[i]);
}
for (i=0;i<bn2.length;i++)
{
bn2[i]=new Button();
switch(i)
{
case 0:

bn2[i].setLabel("+");
break;
case 1:
bn2[i].setLabel("*");
break;
case 2:
bn2[i].setLabel("-");
break;
case 3:
bn2[i].setLabel("/");
break;
case 4:
bn2[i].setLabel("C");
break;

}
bn2[i].addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
almacenar(e);


}
});
add(bn2[i]);

}
igual.addActionListener(new ActionListener()
{

public void actionPerformed(ActionEvent e)
{
mostrar(e);
}
});
add(igual);

/*pto.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
punto(e);
}
});

add("dis",pto);*/



//txt1.setBounds(100,305,100,20);
add("center",txt1);
}
public void punto (ActionEvent e){
checkEquals ();

if (d.indexOf ('.') != -1)
return;

if (d.length () < word)
d = d + ".";
dis.setText(d);

}

private void checkEquals () {
if (equals == true) {
equals = false;
d = "0";
}
}

public void mostrar(ActionEvent e)
{
num2=Double.parseDouble(txt1.getText());


switch (ope)
{
case '+':
res=num1+num2;
break;
case '-':
res=num1-num2;
break;
case '*':
res=num1*num2;
break;
case '/':
res=num1/num2;
break;
case 'C':
repaint();
break;
case '.':
num2='.';


}
txt1.setText(String.valueOf(res));
}
public static void main (String args[])
{
prueba c=new prueba();
c.setVisible(true);
}
public void Numero(ActionEvent e)
{
Button boton=(Button)(e.getSource());
txt1.setText(txt1.getText()+boton.getLabel());
}
public void almacenar(ActionEvent e)
{
Button boton=(Button)(e.getSource());
ope=boton.getLabel().charAt(0);
num1=Double.parseDouble(txt1.getText());
txt1.setText("");
}


}
cybergatita está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Desactivado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 20:49.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

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 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93