Red de conocimiento informático - Conocimiento sistemático - Buscando código simple de calculadora de suma, resta, multiplicación y división escrito en java

Buscando código simple de calculadora de suma, resta, multiplicación y división escrito en java

Importar javax.swing.*;

Importar Java.awt.*;

Importar Java.awt.event.*;

La calculadora de clase pública extiende JFrame Implement ActionListener

{

DotExist booleano privado, operado, igualado//Variables booleanas para ayudar a la operación

Número doble almacenado privado//Resultado actual

Private char lastOperator//Representa el operador anterior.

Operación privada de JTextField; //columna de resultados

Punto JButton privado, signo más, signo menos, multi, div, sqrt, igual, cambioPN, claro//operador

Número de JButton[] privado; //Número

//Generador

Calculadora pública()

{

setTitle( "Calculadora");

//Inicializar variable

dotExist = false//Indica si el número actual tiene punto decimal.

operated = false //Indica si se presiona algún operador.

Equals=false; //Indica si se presiona el signo igual.

número almacenado = 0;

últimoOperador = '? ';

//Inicializar variables de ventana

operación = new JTextField(" 0 ");

operación configurada editable(false);

números = nuevo JButton[10];

for(int I = 0;i<10;i++)

números[I]= nuevo JButton("+I) ;

punto = nuevo JButton(" . ");

más = nuevo JButton("+");

MINUS = nuevo JButton("-" );

multi = nuevo JButton(" * ");

div = nuevo JButton("/");

sqrt = nuevo JButton("√ ") ;

equal = new JButton(" = ");

cambiar pn = new JButton(" ");

clear = new JButton(" AC " );

//Coloque el objeto de ventana en la ventana.

diseño de gridbag = nuevo diseño de gridbag();

getContentPane().

setLayout(diseño);

addComponent(diseño, operación, 0, 0, 4, 1

addComponent(diseño, número [1], 1, 0, 1, 1);

addComponent(diseño, número [2], 1, 1, 1, 1

addComponent (diseño, número [3], 1, 2, 1, 1);

addComponent(diseño, número [4], 2, 0, 1, 1

addComponent (diseño, número [5], 2, 1, 1, 1);

addComponent(diseño, número [6], 2, 2, 1, 1

addComponent (diseño, número [7], 3, 0, 1, 1);

addComponent(diseño, número [8], 3, 1, 1, 1

addComponent (diseño, número [9], 3, 2, 1, 1); );

addComponent(diseño, punto, 4, 0, 1, 1);

addComponent(diseño, número [0], 4, 1, 1, 1); /p>

addComponent(diseño, sqrt, 4, 2, 1, 1

addComponent (diseño, signo más, 1, 3, 1, 1); >addComponent(diseño, menos, 2, 3, 1, 1);

addComponent(diseño, multi, 3, 3, 1, 1);

addComponent(diseño, div); , 4, 3, 1, 1);

addComponent(diseño, igual, 5, 0, 2, 1);

addComponent(diseño, cambioPN, 5, 2, 1); , 1);

addComponent(layout, clear, 5, 3, 1, 1);

}

//Método para reaccionar a los botones

p>

Operación pública no válida ejecutada (evento de operación e)

{

JButton BTN = (JButton)e .

if (. btn == borrar)

{

operación settext(" 0 ");

dotExist = false

número almacenado = 0 ;

últimoOperador = '? ';

}

si no (btn == igual)

{

Operación (' = ');

Igual = verdadero;

}

si no (btn == plus)

{

Operación ('+ ');

Igual = false;

}

si no (btn == menos)

{

Operación ('-');

Igual = false;

}

si no (btn == multi)

{

Operación (' * ');

Igual = false;

}

si no (btn == div)

{

Operación('/');

Equals=false;

}

si no ( btn == cambioPN)

{

Operación(' p ');

Operación(' = ');

Igual a = Verdadero;

}

else if (btn == sqrt)

{

Operación(' s ');

Operación(' = ');

Igual=Verdadero;

}

Otro

{

Si (igual)

número almacenado = 0;

for(int I = 0;i<10;i++)

if (btn == números[i])

{

if (operación.getText().Equal(" 0 "))

operación .settext("+I);

else if(!tiene operación)

operación . settext(operación . gettext()+I);

Otros

{

operación settext(" +I. );

operado = false

}

}

if(BTN = = punto & &!dotExist )

{

operación . settext(operación . gettext()+".");

dotExist = true

}

}

}

//Método de operación

Operación vacía privada (operación de facturación)

{

doble número actual = doble valor de(operación. gettext()).

valor doble();

if (últimoOperador == '?')

Númeroalmacenado = NúmeroActual

si no (últimoOperador == '+') p>

número almacenado+= número actual;

else if (lastOperator == '-')

número almacenado-= número actual;

else if (lastOperator == '* ')

Númeroalmacenado * = Númeroactual

else if (lastOperator == '/')

Número almacenado/= número actual;

else if (lastOperator == 'p ')

número almacenado * =-1;

else if (lastOperator == 's ' )

número almacenado = math . sqrt(número actual);

else if (último operador = = ' = ' & amp; & amp es igual)

NúmeroAlmacenado = NúmeroActual

operación settext("+número almacenado);

operado = verdadero

últimoOperador =operador;

}< / p>

//Cómo usar rápidamente GridBagLayout

private void add Component (diseño de gridbag, componente de componente, fila entera, columna entera, ancho entero, altura entera)

{

Restricciones de GridBagConstraints = nuevas Constraints de GridBag();

Restricciones = Restricciones de GridBag Ambos

Restricciones , 2);

restricciones .gridx =

restricciones . .gridy = fila

constraints.gridwidth = ancho

constraints.gridheight = alto

layout.setConstraints(componente, restricción);

Instancia del componente JButton)

(componente (JButton)). addActionListener(este);

getContentPane(). Agregar (componente);

}

El método principal inicializa y muestra la ventana.

Public static void main(String[] args)

{

Calculadora calc = new Calculator();

calc. (290, 400);

calc conjunto visible(verdadero);

}

}

.