Evaluate both infix and postfix expressions

Assignment Help Basic Computer Science
Reference no: EM13935949

For this assignment, you will build upon existing classes to create a calculator that can  evaluate both infix and postfix expressions. You are given the following classes:

  •  Expression: an abstract class that models a mathematical expression. The class contains abstract methods verify and evaluate which must be defined in any class derived from Expression.
  •  InfixExpression: a class, derived from Expression, that models an infix expression (one in which the operator comes between its operands).
  • Calculator: a class with main method that serves as a calculator, reading in expressions as lines of text and evaluating them.

You are to extend the calculator so that it gives the user the option of entering expressions in infix notation or postfix notation (a.k.a. Reverse Polish notation). In order to accomplish this, you will need to perform the following tasks:

1. Define a new class named PostfixExpression that is derived from Expressionand models a postfix expression. Similar to the way that InfixExpression is defined, your new class will need to implement the verify and evaluate methods. Recall that a stack can be used to evaluate a postifix expression: each operand is pushed on the stack, and each operator is handled by popping two operands off the top, applying the operator, and then pushing the result.
Modify the Calculator class so that the main method first prompts the user as to whether they want to enter infix or postfix expressions for evaluation. Depending on their response, expressions of that type should be read in and evaluated.
Submission:
1) Upload your source code on CMS.
2) Submit a printout of your pprogram along with a copy of the output generated by running the program.
3) Arrange to meet one-to-one with your TA to do a short demonstration of your program in the lab and answer a few questions about the coding on due date or before.

Reference no: EM13935949

Questions Cloud

Explain the steps that would reflect triangular arbitrage : Given this information, is triangular arbitrage possible? If so, explain the steps that would reflect triangular arbitrage, and compute the profit from this strategy if you had £1 000 000 to invest.
Apply the requirements and architecture models : Apply the Requirements and Architecture Models to perform the analysis and design of the alarm control software described above (you can make - and should document - necessary assumptions), and document all results obtained from each of the follow..
What is the slope of the channel : 1. A surveyor finds that the bottom of a rectangular channel drops 3.75 feet in a distance of 200.0 feet. What is the slope of the channel?
Write brief introduction of the given article : Article- Comparing Public-Versus-Private Sector Pay and Benefits: Examining Lifetime Compensation by Thom Reilly. Read the Article and write a 4 page minimum article critique following the below outline in APA Site
Evaluate both infix and postfix expressions : You are to extend the calculator so that it gives the user the option of entering expressions in infix notation or postfix notation (a.k.a. Reverse Polish notation). In order to accomplish this, you will need to perform the following tasks:
Describe the elements of humoral and cellular immunity : Describe the elements of humoral and cellular immunity that are involved in immune responses to viral infections. What mechanisms have infectious agents evolved to defeat these elements?
Describe lytic and lysogenic life cycles of a bacteriphages : Describe the lytic and lysogenic life cycles of a bacteriphages. Include in your answer comparisons and contrasts between the 2 types of cycles.
What is the discharge in the pipe : A concrete pipe is used to help divert a stream to allow repairs to a dam as shown below. The pipe has a diameter of 15.0 feet and a finished surface. What is the discharge in the pipe?
How would your body react in specific way to viral invasion : How would your body react in a non-specific way to a threat of microbial invasion, How would your body react in a specific way to a viral invasion?

Reviews

Write a Review

Basic Computer Science Questions & Answers

  Discuss the role of the project manager or team

Summarize how the project manager or team exhibited exceptional and ethical project management practices. 2.Discuss the role of the project manager or team

  Difference between the short-run and the long-run

Explain the difference between the short-run and the long-run with regard to firm behavior. What are fixed and variable factors of production, and how does this distinction relate to the short-run, long-run distinction? How does the concept of sun..

  How write program contains array double values

How do you write a program that contains an array of 15 double values

  Demonstrate the both the commit and the rollback

Write a script to test your procedure. Demonstrate the both the commit and the rollback.

  Research the internet for recent cases near your region

research the internet for recent cases near your region that used digital or computer evidence as a source of

  Is it ethical for a potential employer to use the internet

Digital Footprint , is it ethical for a potential employer to use the internet this way? Also is it legal?

  Create a simple movie management system

Create a simple movie management system that manages a list of scheduled movies to be played at a fictitious movie theater. Your program must use of the "list" API in the C++ standard template library (STL).

  Creating flowchart of data found on employee time cards

Create a flowchart depicting the following situations: The data found on employee time cards are keyed onto a hard disk before they are processed by a computer.

  Does use of text messages make students less to perform

Does the use of text messages make students less likely to perform well in formal writing assignments? Why? or Why not?

  Describing dichotomy is not linearly separable

Let the d component of x be either 0 or 1. Assume we assign x to w1 if number of non-zero components of x is odd, and to w2 otherwise. Illustrate that this dichotomy is not linearly separable if d>1.

  Writing return statement in a value returning function

What would be wrong with not writing returnstatement in a value returing function? Can you have a returnstatement in a void function? Does the return statement in the following function cause syntax error?

  Design an application to take and process a pizza order

Design an application to take and process a pizza order. The user should be able to make pizza order choices from listboxes, and the application should display the order price.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd