Calculadora con código sencillo en Java (Netbeans)

Editado: 16 de Abril del 2012: Corregí algunos errores y el código ahora está un poco más claro.

Este es mi primer Post, no sabia que rayos escribir hasta que cuando hice mi primera calculadora me vino a la mente publicarlo , casi todos los codigos para las calculadoras son un poco más complicados y la mayoría ya son de forma gráfica, la que hice tiene un código bastante sencillo, aunque utiliza un método pero es sencillo, y aunque no tiene la forma de las demás funciona, lo malo es que el detalle que tiene es que le hace falta un ciclo y una condicional, intenté mejorarlo pero como soy un inexperto ps me marcó error ajajajaa

Ojalá sea útil para alguien y dejen puntillos



import java.util.Scanner; //Aqui importamos el Scanner

/**
*Me he fijado que al final le ponen "*" para importar toda la librería
*Si pueden evitar esto y ya saben lo que van a importar solo importen eso
*para no gastar memoria en vano y no hacer el programa más pesado de lo que debería
*/

public class calcular {

public static void operaciones() {
Scanner entrada = new Scanner(System.in); //Aqui declaramos el Scanner
double numero1; //Declaramos la variable double para poder insertar decimales en las operaciones
double numero2; //Declaramos otro numero para completar la operacion
double resultado=0f;
int opcion1;

/**
*Este es el que nos va a pintar el resultado, le puse valor de 0f para inicializarlo manualmente
*Pueden hacer la prueba sin dejarle valor pero al final les va a pintar error, que lo pueden arreglar con las opciones pero
*preferi hacerlo manualmente porque si no no se aprende
*/

do { //Abrimos un ciclo para hacer múltiples operaciones
System.out.println("numero 1: "); //Aqui es donde preguntamos el primer numero al que haremos una operacion
//vamos a colocar un condicional if para poder seguir haciendo operaciones a partir del resultado
if (resultado == 0f){
numero1 = entrada.nextDouble();
/**
*Cuando no hemos generado aun ningun resultado, es decir, si es nuestra primera operacion nos pedira
* el primer numero
*/

}else{
System.out.prinln("numero 2: ");
numero2 = entrada.nextDouble();
/**
*Este else lo nos marca que en el caso que ya haya una operacion nos pedira nuevamente el numero 2
*para hacer una nueva operacion con el resultado ya obtenido
*/

Systen.out.prinln("Operacion n1 suma n2 resta n3 multiplicacion n4 division n5 salir");
opcion1 = entrada.nextInt(); //Aqui declaramos la opcion para usar un switch
switch (opcion1){
case 1: resultado = numero1 + numero2;
break;
case 2: resultado = numero1 - numero2;
break;
case 3: resultado = numero1 * numero2;
break;
case 4: resultado = numero1 / numero2;
break;
case 5: System.exit(0);

default: System.out.println("Opción incorrecta");
break;
}
System.out.prinln("Resultado"+resultado);
//Aqui pintamos el resultado, es donde les decia que les sale error si no le dan valor a resultado
}while(opcion!=5);//cerramos el ciclo y declaramos que cuando la opcion sea 5 salga de la aplicacion
}/**
*Aqui cierra el metodo operaciones, como consejo les digo que cuiden bien las llaves que abren para que no se
*confundan despues
*/

public static void main(String[]...args){
operaciones();//Aqui llamamos el metodo que hicimos anteriormente, si no lo pintamos en main el programa
corre pero no hará nada

}
}



Realmente le faltan muchos detalles a la calculadora, trataré de mejorarlo pero repito que apenas voy iniciando en esto , acepto sugerencias pero no comentarios ofensivos

hasta otro post

17 comentarios - Calculadora con código sencillo en Java (Netbeans)

@ruthmmm -1
Sirve o no sirve??? TT_TT
@ElcaballeroDark
xD pense que lo harias con interfaz grafica, igual buen trabajo espero que lo hayas hecho tu.
@orly69
Nahum muy bueno tu aporte!!! yo también estoy aprendiendo!! oye tendrás una referencia para hacerla con GUI?
@Sid_Kane
Oye maestro, me tira errores (en NetBeans) y la verdad me interesa mucho porque la verdad estoy bien wey en programación, lo malo es que la maestra ya me trae cortito porque nadamas no doy una
@Heenz12
buen aporte me servira mucho como apoyo! gracias men 5! pnts
@CarlosGomezHerna
y si yo coloco
2+3*2
que debería salir
10
o
8
???
@Nahumfg
Debe salir 8 ya que en java se supone que también reconoce la gerarquía de operaciones
@CarlosGomezHerna
@Nahumfg XD ----> tu código solo sirve para las entrada de dos numero es decir una operación por ejecución.

pss: no lo e compilado
@Nahumfg
@CarlosGomezHerna Yo lo probé y no es sólo una operación por ejecucion, si te fijas por eso está el do-while.
@Jasonpaul
Hola amigos, acabo de terminar mi primer videojuego en Java con netbeans, pueden echarle un vistazo al trailer y pueden descargar el juego, todo ello desde esta página:
jpam.jimdo.com
@solid131
yo te deje +10
porque me as salvado,
me sirvio, pero arregla unas cosas,
hazlo mas compacto
@ROACHVL
NO SIRVE............!
@Nahumfg
No puse el código para ser copiado tal cual, creo eres el único al que no le ha funcionado, por lo cual, pienso que tu error fue no analizar el código.
@ROACHVL
@Nahumfg lo trate de reparar pero creo q el error persiste. Pero gracias ya lo consegui
@valerita83
y que pasa si yo quisiera que dentro de las operaciones NO me permita que divida por 0 ??
@Nahumfg +1
Tienes razón olvidé ese pequeño detalle, simplemente para que la división pueda realizarse pones una condición de que el nummero2 no sea cero, sería algo así:

if(numero2!=0){
resultado = numero1 / numero2;
}else{
System.out.println("Error, de se puede dividir entre 0";
}