Primera calculadora Java

luix
11 de Noviembre del 2004
Esto aprendiendo a programar, solo llevo 3 sesiones y me piden una calculadora a traves de doubles y condicionales. Y este es el codigo:
/**
*Programa calculadora con funciones de suma, resta,
*multiplicación división, potencias y promedios.
*@author Luis
*@version 1.0beta
*/
public class Calculadora{
public static void main(String[] args){
/* 1) Declaración de variables */
double n1, n2;
char op;
double resultado;
/* 2) Entrada del usuario */
n1 = Double.parseDouble( args[0] );
op = args [1].charAt(0);
n2 = Double.parseDouble( args[2] );
/* 3) Si el numero es mayor o igual que 0
el programa hara la raiz, en caso contrario
advertirá del signo del numero introducido */
if ( n1 == 0 && op == '/' && n2 == 0){
System.out.println("++++++// AYUDA DE LA CALCULADORA //++++++n Utilice los siguientes operadores:n + para sumarn - para restarn * para multiplicarn / para dividirn p para potenciasn m para hacer la median+++++++++ CALCULATOR BETA TESTER+++++++++n+++++++++++++++++++++++++++++++++++++++++");
} else if(op == '+') {
resultado = (n1+n2);
System.out.println("Suma => " + n1 +" + "+ n2 + " = " + resultado);
} else if (op == '-'){
resultado = (n1-n2);
System.out.println ("Resta => " + n1 +" - "+ n2 + " = " + resultado);
} else if (op == '*'){
resultado = (n1*n2);
System.out.println ("Multiplicacion => " + n1 +" * "+ n2 + " = " + resultado);
} else if (op == '/'){
resultado = (n1/n2);
System.out.println ("Division => " + n1 +" / "+ n2 + " = " + resultado);
} else if (op == 'p'){
resultado = Math.pow(n1,n2);
System.out.println ("Potencia => " + n1 +"^"+ n2 + " = " + resultado);
} else if (op == 'm'){
resultado = ((n1+n2)/2.0);
System.out.println ("Promedio de " + n1 +" y de "+ n2 + " es " + resultado);
} else {
System.out.println ("El operador no está disponible o no existenUtilice "Java Calculadora 0 / 0" para mas ayuda");
}
}
}
----------
Una vez pasado por javac sin error algun todo funciona de maravilla, excepto el producto de los dos numeros que devuelve lo siguiente:
Exception in thread "main" java.lang.NumberFormatException: For input string: "a
pt.exe"
at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:12
24)
at java.lang.Double.parseDouble(Double.java:482)
at Calculadora.main(Calculadora.java:16)
-----
Ya ven, aún no hemos trabajado con Floats y ya no sé que hacer. Seguiré mirando, pero si alguno de ustedes tiene el pk d este error les estaré agradecido. Gracias. :)

Salleurl.edu
11 de Noviembre del 2004
No se porque pero en lugar de poner * en la operacion deberias poner una x en el :

if (op == \'*\') --> if (op == \'x\')

Ya veras como funciona.