Ver la primera parte del articulo
Un ejemplo de como hacer una calculadora sencilla en Java con rpn:
Descarga el archivo: Parser.java
Descarga el archivo: Pila.java
Descarga la calculadora en formato .jar
¿Como usar el archivo Parser.java?
- crear un nuevo proyecto con eclipse o netbeans.
- crear una nueva clase con el nombre: Parser
(con inicial mayuscula). Ahora borre lo que tiene su clase, copie el contenido del archivo Parser.java y peguelo en su clase Parser.
- cree otra clase con otro nombre por ejemplo Calcular.
En su clase Calcular usted debería tener algo como lo siguiente:
import java.util.Scanner;
public class Calcular {
public static void main(String[] ar) {
Parser calculador=new Parser();
Scanner teclado=new Scanner(System.in);
System.out.print("Ingrese su expresion: ");
String expresion=teclado.next();
System.out.println("El resultado es: "+calculador.calcular(expresion));
}
}
Ahora este código debería funcionar.
Búscanos en Facebook como: Freek Frees
Si te ha servido el articulo te animo a que lo compartas
hola buenas tardes, utilice tu codigo y si corre pero al introducir las operaciones solo arroja el resultado de la operacion por ejemplo 3+3 = 6.0
ResponderEliminarno arroja el resultado en notacion inversa que deberia ser 3 3 + me podrias ayudar?
??????????????????????????????????
ResponderEliminarCuanto siento no haber respondido. Ya no he dado mantenimiento al blog desde hace mas de 1 año.
ResponderEliminarLa solucion es simple: La clase Parser.java tiene el metodo
private String convertir(String expresion)
Este metodo retorna un String con la expresion postfija.
Lo que usted debía hacer es poner public en el metodo, quedando asi:
public String convertir(String expresion)
Luego para quedaria asi:
import java.util.Scanner;
public class Calcular {
public static void main(String[] ar) {
Parser calculador=new Parser();
Scanner teclado=new Scanner(System.in);
System.out.print("Ingrese su expresion: ");
String expresion=teclado.next();
String corregida, postfija;
//para expresiones como (3)(4), las completa asi: (3)*(4)
corregida=calculador.completarExpresion(expresion);
postfija=calculador.convertir(expresion);
System.out.println("Notacion postfija: "+postfija);
System.out.println("El resultado es: "+calculador.calcular(expresion));
}
}