Java Visual Basic
Sininterfaz
import javax.swing.*; public class Menu { public static void
main(String []agrs) { int op=0; double n1,n2,s,m,d,r; do{
op=Integer.parseInt(JOptionPane.showInputDialog("nCalculadoran
"+ "************n"+ "[1] SUMARn"+ "[2] RESTARn"+ "[3]
MULTIPLICARn"+ "[4] DIVIDIRn"+ "[5] SALIRn"+ "Ingresa una
opcion:")); switch(op) { case 1:
n1=Double.parseDouble(JOptionPane.showInputDialog("Ingrese
numero 1"));
n2=Double.parseDouble(JOptionPane.showInputDialog("Ingrese
numero 2")); s=n1+n2; JOptionPane.showMessageDialog(null,"La
suma es:"+s); break; case 2:
n1=Double.parseDouble(JOptionPane.showInputDialog("Ingrese
numero 1"));
n2=Double.parseDouble(JOptionPane.showInputDialog("Ingrese
numero 2")); r=n1-n2; JOptionPane.showMessageDialog(null,"La
resta es:"+r); break; case 3:
n1=Double.parseDouble(JOptionPane.showInputDialog("Ingrese
numero 1"));
n2=Double.parseDouble(JOptionPane.showInputDialog("Ingrese
numero 2")); m=n1*n2; JOptionPane.showMessageDialog(null,"La
multiplicacion es:"+m); break; case 4:
n1=Double.parseDouble(JOptionPane.showInputDialog("Ingrese
numero 1"));
n2=Double.parseDouble(JOptionPane.showInputDialog("Ingrese
numero 2")); d=n1/n2; JOptionPane.showMessageDialog(null,"La
division es:"+d); break; } }while(op!=5); } }
Private Sub Command1_Click()
Text3.Text = Val(Text1.Text) + Val(Text2.Text)
End Sub
Private Sub Command2_Click()
Text3.Text = Val(Text1.Text) - Val(Text2.Text)
End Sub
Private Sub Command3_Click()
Text3.Text = Val(Text1.Text) * Val(Text2.Text)
End Sub
Private Sub Command4_Click()
Text3.Text = Val(Text1.Text) / Val(Text2.Text)
End Sub
Private Sub Command5_Click()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
2.
Calculadora con Interfazen Java- CLASE MAIN… Código completo
import java.util.logging.Level; import
java.util.logging.Logger; import javax.swing.UIManager; import
javax.swing.UnsupportedLookAndFeelException; public class
CalculadoraGUI { public static void main(String[] args) {
String ax = System.getProperty("os.name"); //variable que toma
el nombre del sistema operativo que se tenga instalado
if(ax.equals("Windows 7") || ax.equals("Windows")){//si es un
sistema windows se aplica el skin que tiene java para windows
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.Wind
owsLookAndFeel"); interfaz w = new interfaz(); // TODO code
application logic here } catch (ClassNotFoundException ex) {
Logger.getLogger(interfaz.class.getName()).log(Level.SEVERE,
null, ex); } catch (InstantiationException ex) {
Logger.getLogger(interfaz.class.getName()).log(Level.SEVERE,
null, ex); } catch (IllegalAccessException ex) {
Logger.getLogger(interfaz.class.getName()).log(Level.SEVERE,
null, ex); } catch (UnsupportedLookAndFeelException ex) {
Logger.getLogger(interfaz.class.getName()).log(Level.SEVERE,
null, ex); } } if(ax.equals("Linux")){//si es un sistema linux
se aplica el skin que tiene java para linux try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.Nimbu
sLookAndFeel"); interfaz w = new interfaz(); // TODO code
application logic here } catch (ClassNotFoundException ex) {
Logger.getLogger(interfaz.class.getName()).log(Level.SEVERE,
null, ex); } catch (InstantiationException ex) {
Logger.getLogger(interfaz.class.getName()).log(Level.SEVERE,
null, ex); } catch (IllegalAccessException ex) {
Logger.getLogger(interfaz.class.getName()).log(Level.SEVERE,
null, ex); } catch (UnsupportedLookAndFeelException ex) {
Logger.getLogger(interfaz.class.getName()).log(Level.SEVERE,
null, ex); } } } }
Private Sub Command1_Click()
Text3.Text = Val(Text1.Text) + Val(Text2.Text)
End Sub
Private Sub Command2_Click()
Text3.Text = Val(Text1.Text) - Val(Text2.Text)
End Sub
Private Sub Command3_Click()
Text3.Text = Val(Text1.Text) * Val(Text2.Text)
End Sub
Private Sub Command4_Click()
Text3.Text = Val(Text.Text) / Val(Text2.Text)
End Sub
Private Sub Command5_Click()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
End Sub
Private Sub Command6_Click()
End
End Sub
pb2.setSize(170, 150); pb2.setVisible(true);} public void
botOpe(){ pb3 = new Panel(null); int c=0, x=0, y=0;
operaciones = new JButton[7]; for(int i=0; i<=6; i++){
if(c<=1){ operaciones[i] = new JButton(oper[i]);
pb3.add(operaciones[i]); operaciones[i].setBounds(x, y, 30,
35); operaciones[i].setMargin(new Insets(1, 1, 1, 1));
operaciones[i].addActionListener(this); x+=33; c++; } else{
if(i==6){ x=0; y+=43; operaciones[i] = new JButton(oper[i]);
pb3.add(operaciones[i]); operaciones[i].setBounds(x, y, 65,
35); operaciones[i].setMargin(new Insets(1, 1, 1, 1));
operaciones[i].addActionListener(this); x+=33; c++; } else{
c=0; x=0; y+=43; operaciones[i] = new JButton(oper[i]);
pb3.add(operaciones[i]); operaciones[i].setBounds(x, y, 30,
35); operaciones[i].setMargin(new Insets(1, 1, 1, 1));
operaciones[i].addActionListener(this); x+=33; c++; } } }
pb3.setVisible(true); pb3.setSize(120, 200); } public boolean
isN(String ax){ try{ int n = Integer.parseInt(ax); return
true; }catch(NumberFormatException e){ return false; } }
@Override public void actionPerformed(ActionEvent e) { String
op=""; if(isN(e.getActionCommand())){ //cuando se oprimen
numeros if(jt1.getText().equals("")){ ax +=
e.getActionCommand(); jt2.setText(ax); } else{ if(tipOp==0){
if(t){ ax=""; jt1.setText(jt2.getText()); ax +=
e.getActionCommand(); jt2.setText(ax); t = false; } else{
ax=""; ax += jt2.getText()+e.getActionCommand();
jt2.setText(ax); } }else{ ax=""; ax +=
jt2.getText()+e.getActionCommand(); jt2.setText(ax); } } }
else{//cuando se oprime el resto de botones
if(e.getActionCommand().equals("R") ){ jt1.setText(""); Float
a = Float.parseFloat(jt2.getText());
jt2.setText(""+Math.sqrt(a)); }
if(e.getActionCommand().equals("C") ){ //para reiniciar
valores y limpiar pantalla tipOp=0; n1 = 0; n2 =0; nr=0;
jt1.setText(""); jt2.setText("0"); ax=""; }
if(e.getActionCommand().equals("MC")){//para limpiar la
memoria de la calculadora ms.setForeground(Color.black);
jt1.setText(""); jt2.setText("0"); M=0; }
7.
if(e.getActionCommand().equals("MR")){//para mostrar valor
almacenadoen la memoria jt1.setText("");
jt2.setText(String.valueOf(M));
}if(e.getActionCommand().equals("MS")){//guardar un valor en
la memoria ms.setForeground(Color.red); M =
Float.parseFloat(jt2.getText()); }
if(e.getActionCommand().equals("M+")){//sumar valor de la
pantalla con el valor de la memoria M +=
Float.parseFloat(jt2.getText()); }
if(e.getActionCommand().equals("M-")){//restar valor de la
pantalla con el valor de la memoria M -=
Float.parseFloat(jt2.getText()); }
if(e.getActionCommand().equals(".")){//usar el punto para los
decimales ax=""; if(numeros[10].isEnabled()){
numeros[10].setEnabled(false); ax = jt2.getText() +".";
jt2.setText(ax); } } if(e.getActionCommand().equals("+")
){//boton suma numeros[10].setEnabled(true); ax="";
if(tipOp==1){ }else if(tipOp==0 ){//validacion para no chocar
con otras operaciones if(jt1.getText().equals("") ){ n1 =
Float.parseFloat(jt2.getText()); ax +=
jt1.getText()+jt2.getText(); jt1.setText(ax+" + ");
jt2.setText(""); tipOp = 1; } else { if(!t){//validacion para
nueva operacion n1 = Float.parseFloat(jt2.getText()); ax +=
jt2.getText(); jt1.setText(ax+" + "); jt2.setText(""); tipOp =
1; } else{//usar otras operaciones con la suma n1 =
Float.parseFloat(jt2.getText()); ax += jt1.getText();
jt1.setText(ax+" + "); jt2.setText(""); tipOp = 1; } } } }
if(e.getActionCommand().equals("-") ){//cuando se decide
restar numeros[10].setEnabled(true); ax=""; if(tipOp==2){
}else if(tipOp==0){//validacion para no chocar con otras
operaciones if(jt1.getText().equals("")){ n1 =
Float.parseFloat(jt2.getText()); ax += jt1.getText()+
jt2.getText(); jt1.setText(ax+" - "); jt2.setText(""); tipOp =
2; } else{ if(!t){//validacion para nueva operacion n1 =
Float.parseFloat(jt2.getText()); ax += jt2.getText();
jt1.setText(ax+" - "); jt2.setText(""); tipOp = 2; }
else{//usar otras operaciones con la suma n1 =
8.
Float.parseFloat(jt2.getText()); ax +=jt1.getText();
jt1.setText(ax+" - "); jt2.setText(""); tipOp = 2; } } } }
if(e.getActionCommand().equals("*") ){//cuando se decide
multiplicar numeros[10].setEnabled(true); ax=""; if(tipOp==3){
}else if(tipOp==0){//validacion para no chocar con otras
operaciones if(jt1.getText().equals("")){ n1 =
Float.parseFloat(jt2.getText()); ax +=
jt1.getText()+jt2.getText(); jt1.setText(ax+" * ");
jt2.setText(""); tipOp = 3; } else{ if(!t){//validacion para
nueva operacion n1 = Float.parseFloat(jt2.getText()); ax +=
jt2.getText(); jt1.setText(ax+" * "); jt2.setText(""); tipOp =
3; } else{//usar otras operaciones con la suma n1 =
Float.parseFloat(jt2.getText()); ax += jt1.getText();
jt1.setText(ax+" * "); jt2.setText(""); tipOp = 3; } } } }
if(e.getActionCommand().equals("/") ){//cuando se decide
dividir numeros[10].setEnabled(true); ax=""; if(tipOp==4){
}else if(tipOp==0){//validacion para no chocar con otras
operaciones if(jt1.getText().equals("")){ n1 =
Float.parseFloat(jt2.getText()); ax +=
jt1.getText()+jt2.getText(); jt1.setText(ax+" / ");
jt2.setText(""); tipOp = 4; } else{ if(!t){//validacion para
nueva operacion n1 = Float.parseFloat(jt2.getText()); ax +=
jt2.getText(); jt1.setText(ax+" / "); jt2.setText(""); tipOp =
4; } else{//usar otras operaciones con la suma n1 =
Float.parseFloat(jt2.getText()); ax += jt1.getText();
jt1.setText(ax+" / "); jt2.setText(""); tipOp = 4; } } } }
if(e.getActionCommand().equals("=") &&
!jt2.getText().equals("")){ t = true; if(tipOp==1){//operacion
para la suma tipOp = 0; ax=""; ax+=jt1.getText() +
jt2.getText(); jt1.setText(ax); n2 =
Float.parseFloat(jt2.getText()); nr=n1+n2;
jt2.setText(String.valueOf(nr)); } else if(tipOp==2){
//operacion para la resta tipOp = 0; ax="";
ax+=jt1.getText()+jt2.getText(); jt1.setText(ax); n2 =
Float.parseFloat(jt2.getText()); nr=n1-n2;
jt2.setText(String.valueOf(nr)); } if(tipOp==3){ //operacion
para la multiplicacion tipOp = 0; ax="";
9.
ax+=jt1.getText()+jt2.getText(); jt1.setText(ax); n2=
Float.parseFloat(jt2.getText()); nr=n1*n2;
jt2.setText(String.valueOf(nr)); } if(tipOp==4){ //operacion
para la multiplicacion if(Float.parseFloat(jt2.getText())!=0){
tipOp = 0; ax=""; ax+=jt1.getText()+jt2.getText();
jt1.setText(ax); n2 = Float.parseFloat(jt2.getText());
nr=n1/n2; jt2.setText(String.valueOf(nr)); } else
JOptionPane.showMessageDialog(null, "No se puede realizar
divison por 0"); } } } } }