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

  Identifies the cost of computer

identifies the cost of computer components to configure a computer system (including all peripheral devices where needed) for use in one of the following four situations:

  Input devices

Compare how the gestures data is generated and represented for interpretation in each of the following input devices. In your comparison, consider the data formats (radio waves, electrical signal, sound, etc.), device drivers, operating systems suppo..

  Cores on computer systems

Assignment : Cores on Computer Systems:  Differentiate between multiprocessor systems and many-core systems in terms of power efficiency, cost benefit analysis, instructions processing efficiency, and packaging form factors.

  Prepare an annual budget in an excel spreadsheet

Prepare working solutions in Excel that will manage the annual budget

  Write a research paper in relation to a software design

Research paper in relation to a Software Design related topic

  Describe the forest, domain, ou, and trust configuration

Describe the forest, domain, OU, and trust configuration for Bluesky. Include a chart or diagram of the current configuration. Currently Bluesky has a single domain and default OU structure.

  Construct a truth table for the boolean expression

Construct a truth table for the Boolean expressions ABC + A'B'C' ABC + AB'C' + A'B'C' A(BC' + B'C)

  Evaluate the cost of materials

Evaluate the cost of materials

  The marie simulator

Depending on how comfortable you are with using the MARIE simulator after reading

  What is the main advantage of using master pages

What is the main advantage of using master pages. Explain the purpose and advantage of using styles.

  Describe the three fundamental models of distributed systems

Explain the two approaches to packet delivery by the network layer in Distributed Systems. Describe the three fundamental models of Distributed Systems

  Distinguish between caching and buffering

Distinguish between caching and buffering The failure model defines the ways in which failure may occur in order to provide an understanding of the effects of failure. Give one type of failure with a brief description of the failure

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