Вы находитесь на странице: 1из 32

Grupo Colegio Mexiquense Universitario

Ing. en Sistemas Computacionales

Ing. de Software

Profesor: Ing. S.C. Vianey Soltero Prez

Alumno: Jonathan Lpez Zepeda

Sabatino 2 semestre

Proyecto calculadora

Introduccin
En este proyecto se llevar a cabo el desarrollo de software de una calculadora
con operaciones simples (suma, resta, multiplicacin, divisin). Para poder realizar
el software se aplicar la ingeniera de software correspondiente teniendo un
objetivo general y especifico, as como la investigacin de requerimientos
funcionales y no funcionales, el modelo que se utilizar para el desarrollo del
software, se aplicaran los casos de uso identificando la funcin de cada actor, as
como de la aplicacin.

Objetivo General
Desarrollar una calculadora que sea capaz de realizar las operaciones bsicas
como suma, resta, multiplicacin y divisin, el usuario introducir la cantidad por
medio de botones, la validacin de la calculadora ser realizada en el botn punto
donde solo se podr introducir una nica ves el punto.

Objetivos especficos
Anlisis
1.-La calculadora identificara el tipo de operacin que desea realizar el usuario a
travs de cada botn por operacin.
2.-Mostrara la operacin realizada y resultado
3.-Solo se podr utilizar introducir el punto una sola ocasin
Diseo
1.-Su diseo ser simple cada nmero y operacin ser un botn,
2.-Todo nmero se mostrar en una caja de texto no editable.
3.- Mostrar la operacin completa en la parte superior de la calculadora.
4.-Mostrara el resultado en la caja de texto no editable
Desarrollo
1.-El software se desarrollar en el lenguaje java

Modelo
El modelo que utilizare para el desarrollo de la calculadora ser el modelo en
cascada ya que me permite perfeccionar cada fase del software, ya que es un
proyecto pequeo y los requisitos son claros y entendibles el modelo en cascada
es el correcto para este proyecto.

imagen 1 modelo cascada

Anlisis
Requisitos
Un requerimiento es la definicin de cada entrada y salida del
software divididos en requerimientos funcionales y no funcionales

Requerimientos funcionales
1.-Sumar 2 nmeros

Se obtendr el primer nmero digitalizado por el usuario en la


caja de texto guardndolo en una variable al presionar el botn +,
y se mostrar el contenido de la variable en la parte superior
seguida del smbolo +, y se limpiar la caja de texto.
Se obtendr el segundo nmero digitalizado por el usuario en la
caja de texto guardndolo en una segunda variable y realizar la
suma guardando el resultado en una tercera variable.
Mostrar la operacin completa en la parte superior y el resultado
en la caja de texto al presionar el botn =.

2.-Restar 2 nmeros

Se obtendr el primer nmero digitalizado en la caga de texto


guardndolo en una variable al presionar el botn -, y se mostrar el
contenido de la variable en la parte superior seguida del smbolo -, y
se limpiar la caja de texto.
Se obtendr el segundo nmero digitalizado en la caja de texto
guardndolo en una segunda variable y realizar la resta guardado el
resultado en una tercera variable.
Mostrar la operacin completa en la parte superior y el resultado en
la caja de texto al presionar el botn =.

3.-multiplicar 2 nmeros

Se obtendr el primer nmero digitalizado en la caga de texto


guardndolo en una variable al presionar el botn *, y se mostrar el
contenido de la variable en la parte superior seguida del smbolo *, y
se limpiar la caja de texto.

Se obtendr el segundo nmero digitalizado en la caja de texto


guardndolo en una segunda variable y realizar la resta guardado el
resultado en una tercera variable.
Mostrar la operacin completa en la parte superior y el resultado en
la caja de texto al presionar el botn =.

4.-Dividir 2 nmeros

Se obtendr el primer nmero digitalizado en la caga de texto


guardndolo en una variable al presionar el botn /, y se mostrar el
contenido de la variable en la parte superior seguida del smbolo /, y
se limpiar la caja de texto.
Se obtendr el segundo nmero digitalizado en la caja de texto
guardndolo en una segunda variable y realizar la resta guardado el
resultado en una tercera variable.
Mostrar la operacin completa en la parte superior y el resultado en
la caja de texto al presionar el botn =.

5.-limpiara pantalla

Se podr limpiar pantalla o borrar todo por completo


Se podr eliminar el ultimo numero digitalizado

Requisitos no funcionales
1.-Se desarrollar en el lenguaje java

El lenguaje java es la mejor opcin para este pequeo proyecto ya


que nos permite trabajar con grafica facilitndonos mucho la
programacin, indicando instrucciones de accin a cada botn.

Diseo de sistema
La calculadora generara las operaciones bsicas de acuerdo a las acciones que
tome el usuario.

7
1
6
2

4
3
imagen 2 interface de calculadora autor: Jonathan Lpez

1.-Caja donde se visualizarn los nmeros que el usuario digitalic y el resultado


de las operaciones
2.-Teclado numrico: al presionar el botn el nmero correspondiente se mostrar
en la caja de texto.
3.-Boton punto: se validar que solo se pueda mostrar una sola ocasin para
dividir los enteros de los decimales.
4.-Teclado operaciones: al presionar el botn se captura el nmero que se
encuentra en la caja y se guarda en una variable y se muestra en la caja superior
(7), as como el operador para identificar el tipo de operacin a realizar y se limpia
la caja
5.-Botn igual: al presionar el botn se captura el nmero que se encuentra en la
caja y se guarda en una segunda variable, se lee el valor de la variable operador y

se identifica la operacin que se realizara, se muestra el resultado en la


caja y la operacin en la caja superior
6.-Botones borrar: CE limpia por completo ambas cajas. C solo elimina el ltimo
nmero que se digito.
7.-Caja donde se visualizarn los nmeros despus de presionar un botn de
operacin o se mostrara la operacin completa al presionar el botn igual (=).

Casos de Usos

imagen 3 caso de uso calculadora autor: Jonathan Lpez

Manual de usuario

El uso de la calculadora es bsico su interface es sencilla e intuitiva, el


teclado numrico esta en manera ascendente

Ilustracin
imagen
0 Teclado
Numrico

Cada botn mandara su valor a la ventana para visualizarlos

imagen 0 Caja vaca

imagen 0 Caja con nmeros insertados a travs del teclado numrico

Al presionar los botones de operacin, se limpiar la ventana y el nmero que se


encontraba hay pasar en la parte superior con el smbolo del operador
presionado

imagen 0 Teclado operaciones

imagen 0 Caja de operacin


muestra primer nmero y operados
presionado

Al presionar el botn igual se limpiarn las ventanas para poder mostrar


el resultado en la primera ventana y en la parte superior la operacin completa

imagen: 0 Cajas limpias

imagen 0 Caja superior muestra operacin completa y en la caja principal se muestra el


resultado de la operacin

El botn punto solo se podr colocar una nica ocasin separando los enteros de
los decimales

imagen 0
Botn punto

imagen 0 Caja principal se visualiza


la accin del punto

Botones limpiar o borrar

: Limpia por completo ambas ventanas


: Borra ultimo digito en la primera ventana
imagen 0
Botones limpiar
y borrar

imagen 0 Se muestra una operacin a la cual se le borrara el ltimo nmero ingresado

imagen 0 Se muestra el resultado al presionar el botn C

Manual tcnico
La calculadora est desarrollada en lenguaje java, sobre el IDE NETBEANS se le
dio la siguiente interface

imagen 0 Interface de Calculadora

Las controles utilizados son botones, caja de texto(MostrarDatos) y una


etiqueta(DatosSegundoPlano).
Los botones del teclado numerico se le asigno el numero correspondiente, as
como al momento de precionarlo se mostrara en la caja de texto, a traves de un
evento.

imagen 0 Cdigo del botn 1 del teclado numrico

El boton PUNTO se crea una cadena donde se guardaran los numeros que se
encuentren en la caja de texto. En caso de que la caja de texo este basia se
colocara un 0.
Crearemos un metodo publico para evitar que se coloque mas de un punto,
recorriendo toda la cadena, si no existe punto lo colocara al final, pero si existe no
colocara nada

imagen 0 Cdigo botn punto

Los botones del teclado de operaciones se les asigno el operador


correspondiente a la variable operador, al momento de precionarlo, guardara el
numero que se encuentra en la caja de texto(MostrarDatos) en una variable
llamada numero1, se limpia la caja de texto, y por ultimo se mostrara el contenido
de la variable numero1 en la etiqueta.

imagen 0 Teclado operaciones

imagen 0 Cdigo botn operador ms (+)

Botn IGUAL, ser donde se realicen las operaciones, para eso


crearemos un mtodo pblico con tres parmetros donde le enviaremos el valor de
las variables numero1, numero2 y operador, dentro del mtodo identificaremos
que tipo de operador se est recibiendo y a partir de este se realizar la operacin,
se mostrara el resultado en la caja de texto y la operacin completa en la etiqueta.

imagen 0 Cdigo botn igual (=)

Botones limpiar, su funcin es mandar una cadena baca a la caja de texto y a la


etiqueta

imagen 0 Cdigo botn limpiar cajas

Botn borrar, su funcin es una borrar el ultimo digito que se encuentra en la caja
de texto, lo que hacemos es recuperar lo que se encuentra en la caja de texto y
guardarlo en una cadena, leer la cadena y darle el mismo valor de la cadena-1 y
mandamos a mostrar a la caja de texto.

imagen 0 Cdigo botn borrar ultimo digito

cdigo fuente
package jona;
public class calculadoraFinal extends javax.swing.JFrame {

//declaracion de variables para guardar numeros ingresados en la caja de texto

String numero1;
String operador;
String numero2;

public calculadoraFinal() {
initComponents();
}

@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

MostrarDatos = new javax.swing.JTextField();


num7 = new javax.swing.JButton();
num8 = new javax.swing.JButton();
num9 = new javax.swing.JButton();
divicion = new javax.swing.JButton();
num4 = new javax.swing.JButton();
num5 = new javax.swing.JButton();
num6 = new javax.swing.JButton();
numtiplicacion = new javax.swing.JButton();
num1 = new javax.swing.JButton();
num2 = new javax.swing.JButton();
num3 = new javax.swing.JButton();
resta = new javax.swing.JButton();
num0 = new javax.swing.JButton();
punto = new javax.swing.JButton();
suma = new javax.swing.JButton();
igual = new javax.swing.JButton();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();

DatosSegundoPlano = new javax.swing.JLabel();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setMinimumSize(new java.awt.Dimension(290, 230));
getContentPane().setLayout(null);

MostrarDatos.setEditable(false);
MostrarDatos.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
MostrarDatos.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatosActionPerformed(evt);
}
});
getContentPane().add(MostrarDatos);
MostrarDatos.setBounds(30, 30, 216, 30);

num7.setText("7");
num7.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num7ActionPerformed(evt);
}
});
getContentPane().add(num7);
num7.setBounds(10, 70, 39, 23);

num8.setText("8");
num8.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num8ActionPerformed(evt);
}
});

getContentPane().add(num8);
num8.setBounds(60, 70, 39, 23);

num9.setText("9");
num9.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num9ActionPerformed(evt);
}
});
getContentPane().add(num9);
num9.setBounds(110, 70, 39, 23);

divicion.setText("/");
divicion.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
divicionActionPerformed(evt);
}
});
getContentPane().add(divicion);
divicion.setBounds(160, 70, 37, 23);

num4.setText("4");
num4.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num4ActionPerformed(evt);
}
});
getContentPane().add(num4);
num4.setBounds(10, 100, 39, 23);

num5.setText("5");

num5.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num5ActionPerformed(evt);
}
});
getContentPane().add(num5);
num5.setBounds(60, 100, 39, 23);

num6.setText("6");
num6.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num6ActionPerformed(evt);
}
});
getContentPane().add(num6);
num6.setBounds(110, 100, 39, 23);

numtiplicacion.setText("*");
numtiplicacion.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
numtiplicacionActionPerformed(evt);
}
});
getContentPane().add(numtiplicacion);
numtiplicacion.setBounds(160, 100, 39, 23);

num1.setText("1");
num1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num1ActionPerformed(evt);
}

});
getContentPane().add(num1);
num1.setBounds(10, 130, 39, 23);

num2.setText("2");
num2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num2ActionPerformed(evt);
}
});
getContentPane().add(num2);
num2.setBounds(60, 130, 39, 23);

num3.setText("3");
num3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num3ActionPerformed(evt);
}
});
getContentPane().add(num3);
num3.setBounds(110, 130, 39, 23);

resta.setText("-");
resta.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
restaActionPerformed(evt);
}
});
getContentPane().add(resta);
resta.setBounds(160, 130, 37, 23);

num0.setText("0");
num0.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
num0ActionPerformed(evt);
}
});
getContentPane().add(num0);
num0.setBounds(60, 160, 39, 23);

punto.setText(".");
punto.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
puntoActionPerformed(evt);
}
});
getContentPane().add(punto);
punto.setBounds(210, 160, 37, 23);

suma.setText("+");
suma.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
sumaActionPerformed(evt);
}
});
getContentPane().add(suma);
suma.setBounds(160, 160, 41, 23);

igual.setText("=");
igual.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
igualActionPerformed(evt);

}
});
getContentPane().add(igual);
igual.setBounds(210, 130, 40, 23);

jButton1.setText("C");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
getContentPane().add(jButton1);
jButton1.setBounds(210, 100, 40, 23);

jButton2.setText("CE");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
getContentPane().add(jButton2);
jButton2.setBounds(210, 70, 45, 23);

DatosSegundoPlano.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
DatosSegundoPlano.setToolTipText("");
getContentPane().add(DatosSegundoPlano);
DatosSegundoPlano.setBounds(30, 0, 210, 20);

pack();
}// </editor-fold>
//declaracion de evento al precionar el boton 0

private void num0ActionPerformed(java.awt.event.ActionEvent evt) {


MostrarDatos.setText(MostrarDatos.getText() + "0");//se envia y se muestra el nmero 0
}
//declaracion de evento al precionar el boton 1
private void num1ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText(MostrarDatos.getText() + "1");//se envia y se muestra el nmero 1
}
//declaracion de evento al precionar el boton 2
private void num2ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText(MostrarDatos.getText() + "2");//se envia y se muestra el nmero 2
}
//declaracion de evento al precionar el boton 3
private void num3ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText(MostrarDatos.getText() + "3");//se envia y se muestra el nmero 3
}
//declaracion de evento al precionar el boton 4
private void num4ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText(MostrarDatos.getText() + "4");//se envia y se muestra el nmero 4
}
//declaracion de evento al precionar el boton 5
private void num5ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText(MostrarDatos.getText() + "5");//se envia y se muestra el nmero 5
}
//declaracion de evento al precionar el boton 6
private void num6ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText(MostrarDatos.getText() + "6");//se envia y se muestra el nmero 6
}
//declaracion de evento al precionar el boton 7
private void num7ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText(MostrarDatos.getText() + "7");//se envia y se muestra el nmero 7
}

//declaracion de evento al precionar el boton 8


private void num8ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText(MostrarDatos.getText() + "8");//se envia y se muestra el nmero 8
}
//declaracion de evento al precionar el boton 9
private void num9ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText(MostrarDatos.getText() + "9");//se envia y se muestra el nmero 9
}
//declaracion de evento al precionar el boton punto
private void puntoActionPerformed(java.awt.event.ActionEvent evt) {
String cadena;//declaracion de la variable cadena
cadena = MostrarDatos.getText();//se captura lo que esta dentro de la caja de texto
if (cadena.length() <= 0) {//se lee la cadena si esta vacia entra si no pasara al else if
MostrarDatos.setText("0.");//si no existe numero se colocara un 0 antes del punto
} else if (!existepunto(MostrarDatos.getText())) {//se leera si existe un punto
MostrarDatos.setText(MostrarDatos.getText() + ".");//si no exite se colocara al final
}
}
public static boolean existepunto(String cadena) {//metodo si existe punto
boolean resultado;//varaible resultado
resultado = false;//se inicializa la variable en falso
for (int i = 0; i < cadena.length(); i++) {//si existe un punto no entrara al if
if (cadena.substring(i, i + 1).equals(".")) {//si no existe un punto lo ingresara
resultado = true;
break;
}
}
return resultado;
}
//metodo boton suma
private void sumaActionPerformed(java.awt.event.ActionEvent evt) {

if (!MostrarDatos.getText().equals("")) {//se captura lo que esta en la caja de texto


numero1 = MostrarDatos.getText();//se guarda en la variable numero1
operador = "+";//se guarda el valor + en la variable operador
MostrarDatos.setText("");//mandamos una cadena vacia para limpiar la caja de texto
String n1;//declaracion de variable n1
n1 = numero1;//guardamos el contenido de la variable numero1 en n1
DatosSegundoPlano.setText(n1 + "+");//mostramos el valor de la variable n1 y el operador
}
}
//metodo boton igual
private void igualActionPerformed(java.awt.event.ActionEvent evt) {
String resultado;//declaracion de variable resultado
numero2 = MostrarDatos.getText();//se captuta lo que se encuentra en la caja
if (!numero2.equals("")) {//se verifica si la cadena esta basia
resultado = calculo(numero1, numero2, operador);//se envian los valores de las variables al
metodo calculo y se asigna el valor resultante a la variable resultado
MostrarDatos.setText(resultado);//se manda el valor de la variable resultado a la caja de
texto
}
String n1, n2, op;//declaracion de variables tipo string
n1 = numero1;//asignamos el valor de numero1 a n1
n2 = numero2;//asignamos el valor de numero2 a n2
op = operador;//asignamos el valor de operador a op
DatosSegundoPlano.setText(n1 + op + n2);//se envian los valores de las variables a la
etiqueta
}

public static String calculo(String numero1, String numero2, String operador) {// metodo calculo
Double resultado = 0.0;//se crea variable tipo double y se inicializa en 0
String respuesta;//se crea la variable respuesta
if (operador.equals("-")) {//se identifica el valor del operador si es el signo - entrara a restar los
valores de las variables n1 y n2

resultado = Double.parseDouble(numero1) - Double.parseDouble(numero2);//se restan


los valores de las variables n1-n2
}
if (operador.equals("+")) {//se identifica el operador +
resultado = Double.parseDouble(numero1) + Double.parseDouble(numero2);//se suman los
valores de las variables n1+n2
}
if (operador.equals("*")) {//se identifica el operador *
resultado = Double.parseDouble(numero1) * Double.parseDouble(numero2);//se multiplican
los valores de las variables n1*n2
}
if (operador.equals("/")) {//se identifica el operador /
resultado = Double.parseDouble(numero1) / Double.parseDouble(numero2);//se dividen los
valores de las variables n1/n2
}
respuesta = resultado.toString();//se guarda el valor de la varible resultado en la variable
respuesta
return respuesta;//se retorna el valor de la variable respuesta
}
//boton borrar
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String cadena;//se crea la variable cadena
cadena = MostrarDatos.getText();//se captura el contenido de la caja y se guarda en la
variable cadena
if (cadena.length() > 0) {//se identifica que la cadena no este vacia
cadena = cadena.substring(0, cadena.length() - 1);//se guarda el valor de la cadena menos
el ultimo elemento en la misma variable cadena
MostrarDatos.setText(cadena);//se envian los valores de la cadena a la caja de texto
}
}
//botones limpiar caja y etiqueta
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
MostrarDatos.setText("");//se envia cadena vacia a la caja

DatosSegundoPlano.setText("");//se envia cadena vacia a la etiqueta


}
// boton resta
private void restaActionPerformed(java.awt.event.ActionEvent evt) {
if (!MostrarDatos.getText().equals("")) {
numero1 = MostrarDatos.getText();
operador = "-";
MostrarDatos.setText("");
String n1;
n1 = numero1;
DatosSegundoPlano.setText(n1 + "-");
}
}

private void numtiplicacionActionPerformed(java.awt.event.ActionEvent evt) {


if (!MostrarDatos.getText().equals("")) {
numero1 = MostrarDatos.getText();
operador = "*";
MostrarDatos.setText("");
String n1;
n1 = numero1;
DatosSegundoPlano.setText(n1 + "*");
}
}

private void divicionActionPerformed(java.awt.event.ActionEvent evt) {


if (!MostrarDatos.getText().equals("")) {
numero1 = MostrarDatos.getText();
operador = "/";
MostrarDatos.setText("");
String n1;

n1 = numero1;
DatosSegundoPlano.setText(n1 + "/");
}
}

private void MostrarDatosActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for
(javax.swing.UIManager.LookAndFeelInfo
javax.swing.UIManager.getInstalledLookAndFeels()) {

info

if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(calculadoraFinal.class.getName()).log(java.util.logging.Le
vel.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(calculadoraFinal.class.getName()).log(java.util.logging.Le
vel.SEVERE, null, ex);

} catch (IllegalAccessException ex) {


java.util.logging.Logger.getLogger(calculadoraFinal.class.getName()).log(java.util.logging.Le
vel.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(calculadoraFinal.class.getName()).log(java.util.logging.Le
vel.SEVERE, null, ex);
}
//</editor-fold>

/* Create and display the form */


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new calculadoraFinal().setVisible(true);
}
});
}

// Variables declaration - do not modify


private javax.swing.JLabel DatosSegundoPlano;
private javax.swing.JTextField MostrarDatos;
private javax.swing.JButton divicion;
private javax.swing.JButton igual;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton num0;
private javax.swing.JButton num1;
private javax.swing.JButton num2;
private javax.swing.JButton num3;
private javax.swing.JButton num4;
private javax.swing.JButton num5;
private javax.swing.JButton num6;

private javax.swing.JButton num7;


private javax.swing.JButton num8;
private javax.swing.JButton num9;
private javax.swing.JButton numtiplicacion;
private javax.swing.JButton punto;
private javax.swing.JButton resta;
private javax.swing.JButton suma;
// End of variables declaration
}

Validacin
La aplicacin que se desarrollo es la correcta al igual que su funcionalidad ya que
al manejar una interface, su uso es intuitivo para el usuario.

La validacin que se realizaron fueron las sig.


Validacin de cajas
No se puede introducir letras ni nmeros directamente

Imagen 1 cajas

Validacin de botn numrico


Al presionar el botn solo se mostrara el nmero correspondiente

Imagen 2 teclado
numrico

Validacin botn punto


Al presionar el botn se detectara si existe un punto en la caja, si no existe se
colocara al final, en caso de que no exista nmero alguno se colocara un 0.en la
caja

Imagen 3
botn punto

Вам также может понравиться