46 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| // @author Frank M. Carrano
 | |
| // @author Timothy M. Henry
 | |
| // @version 5.0
 | |
| public class PostfixTest
 | |
| {
 | |
|     public static void main(String arg[])
 | |
|     {
 | |
|         
 | |
|         // Test convertToPostfix
 | |
|         System.out.println("Testing convertToPostfix");
 | |
|         String[] expressions = {"(a+b)/(c-d)","a/(b-c)*d","a-(b/(c-d)*e+f)^g", 
 | |
|                                 "(a-b*c)/(d*e^f*g+h)"};
 | |
|         String[] qNums = {"a", "b", "c", "d"};
 | |
|         for (int i = 0; i < expressions.length; i++)
 | |
|         {
 | |
|             String postfix = Postfix.convertToPostfix(expressions[i]);
 | |
|             System.out.println(qNums[i]+". " + expressions[i] + " is converted to " + postfix);
 | |
|         }
 | |
|         
 | |
|         System.out.println();
 | |
|         
 | |
|         // Test evaluatePostfix
 | |
|         System.out.println("Testing evaluatePostfix");
 | |
|         String[] postfixes = {"a e + b d - /", "a b c * d * -","a b c - / d *",
 | |
|                               "e b c a ^ * + d -"};
 | |
|         for (int i = 0; i < postfixes.length; i++)
 | |
|         {
 | |
|             int evaluation = Postfix.evaluatePostfix(postfixes[i]);
 | |
|             System.out.println(qNums[i]+". " + postfixes[i] + " is evaluated as " + evaluation);
 | |
|         }
 | |
|         
 | |
|         System.out.println();
 | |
|         
 | |
|         // Test evaluateInfix
 | |
|         System.out.println("Testing evaluateInfix");
 | |
|         String[] infixes = {"a+b*c-9", "(a+ e)/ (b- d)","a+(b+c*d)-e/2",
 | |
|                               "e-b*c^a+d"};
 | |
|         for (int i = 0; i < postfixes.length; i++)
 | |
|         {
 | |
|             int evaluation = Postfix.evaluateInfix(infixes[i]);
 | |
|             System.out.println(qNums[i]+". " + infixes[i] + " is evaluated as " + evaluation);
 | |
|         }        
 | |
|     }
 | |
| }
 | |
|   
 |