package senac_turma02.calcpol;

import java.util.Scanner;
import senac_turma02.stack.StackImpl;

public class Main {
	/////////////////////////
	// Teste da implementacao
	/////////////////////////
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		StackImpl s = new StackImpl();
		String numero;

		int valor;
		char op;
		Scanner entrada = new Scanner(System.in);
		System.out.println(" -> Digite Operador ou Operado ou F para encerrar ");
		numero = entrada.next().trim();
		op = numero.charAt(0);
		while(!numero.equalsIgnoreCase("F"))
		{
			switch(op)
			{
			case '*':
				s.push(s.pop() * s.pop());
				System.out.println("Valor do topo " + s.top());
				break;
			case '/':
				s.push(s.pop() / s.pop());
				System.out.println("Valor do topo " + s.top());
				break;
			case '+':
				s.push(s.pop() + s.pop());
				System.out.println("Valor do topo " + s.top());
				break;
			case '-':
				s.push(s.pop() - s.pop());
				System.out.println("Valor do topo " + s.top());
				break;
			default:
				valor = Integer.parseInt(numero); 
			    s.push(valor);
			}
			System.out.println(" -> Digite Operador ou Operado ou F para encerrar ");
			numero = entrada.next();
			op = numero.charAt(0);
		}
	}
}
