Write a program that will populate a queue with post-fix

Assignment Help Computer Engineering
Reference no: EM132210522

Question :

Write a program that will populate a queue with post-fix (reverse polish) integer expressions and then print out the solution to each expression.

A stack is used to calculate values in post-fix notation. Numbers are pushed onto the stack, and when an operator is reached it pops off the last two numbers and then pushes the resulting value back on the stack.

This program must:

Assume that each number and operator is separated by any type of space, and each expression is separated by a new line

Calculate values using the algorithm mentioned above and in the slides for addition, subtraction, multiplication, and division (+,-,*,/)

Error message if the user tries to divide by zero

Read a given file

Make sure to check if there's at least two items on the stack before when an operator is encountered or else it's not a properly formatted post-fix expression

Finish when the program reaches the end of the string and it has only one value left on the stack, then that value is popped off and returned. Otherwise it was not properly formatted

Use your own created stack and queue, and not java's built in stack and queue

You may use any implementation so either an array or a linked structure.

HINTS! First when you're processing the inputted string you can use a Scanner and call the method next() to get each token.

From there you can evaluate if that token is an operator, numeric value, or an error.

If it's a numeric value then you may parse that string using Integer.parseInt() to get the integer value.

You may also call Integer.parseInt() in a try-catch block. If the token is not an integer an exception will be raised and should be immediately halted.

Example Dialog:

Welcome to the reverse Polish Calculator!

Enter in the name of the file

revPol.txt

Calculating 3 2 +

Result is 5

Calculating 5 1 2 + 4 * + 3 -

Result is 14

Calculating 2 3 4 +

Ill formatted expression

Result is 0

Calculating 0

Result is 0

Calculating 6 7 8 9 * + - 8 4 / /

Result is -36

Calculating 1 2 3 4 + - 5 6 * + +

Result is 26

Calculating 2 4 + 5 + 7 + 8 + 9 +

Result is 35

Calculating +

Ill formatted expression

Result is 0

Calculating 2 b +

Exception! For input string: "b"

Result is 0

Calculating 1 0 /

Cannot divide by 0

Result is 0

Please provide a solution that does not use buffered reader.

Reference no: EM132210522

Questions Cloud

What strategies have been used : ITECH1101 IT Problem Solving - improving our understanding of critical thinking, with a focus on computational thinking since this subset of critical thinking
Write a program to process a weighted undirected graph : Set up and print the adjacency matrix representation of the Graph. Determine whether the graph is connected.
Write a program that prompts for and reads numbers : Write a program that prompts for and reads numbers into an array. The array should be big enough to hold 20 numbers.
Write a program that prints the numbers 1 to n to stdout : Write a program that prints the numbers 1 to n to stdout where n is the first command line argument.
Write a program that will populate a queue with post-fix : Calculate values using the algorithm mentioned above and in the slides for addition, subtraction, multiplication, and division.
What is its estimated value per share : The firm's weighted average cost of capital is 11%, If the firm plans to issue 200,000 shares of common stock, what is its estimated value per share
Perform the a search and apply that program to the problem : You are to write a program that performs the A* search and apply that program to the problem described
Write a program to print the following table : Write a program to print the following table. Each row in the table has an integer, its square, its cube, and then its square root to 2 decimal places.
Write a program which prompts a user for 5 2-d : Write a program which prompts a user for 5 2-D (x,y) coordinates and writes them to a file "points.txt", one point (x,y) coordinate pair per line.

Reviews

Write a Review

Computer Engineering Questions & Answers

  Mathematics in computing

Binary search tree, and postorder and preorder traversal Determine the shortest path in Graph

  Ict governance

ICT is defined as the term of Information and communication technologies, it is diverse set of technical tools and resources used by the government agencies to communicate and produce, circulate, store, and manage all information.

  Implementation of memory management

Assignment covers the following eight topics and explore the implementation of memory management, processes and threads.

  Realize business and organizational data storage

Realize business and organizational data storage and fast access times are much more important than they have ever been. Compare and contrast magnetic tapes, magnetic disks, optical discs

  What is the protocol overhead

What are the advantages of using a compiled language over an interpreted one? Under what circumstances would you select to use an interpreted language?

  Implementation of memory management

Paper describes about memory management. How memory is used in executing programs and its critical support for applications.

  Define open and closed loop control systems

Define open and closed loop cotrol systems.Explain difference between time varying and time invariant control system wth suitable example.

  Prepare a proposal to deploy windows server

Prepare a proposal to deploy Windows Server onto an existing network based on the provided scenario.

  Security policy document project

Analyze security requirements and develop a security policy

  Write a procedure that produces independent stack objects

Write a procedure (make-stack) that produces independent stack objects, using a message-passing style, e.g.

  Define a suitable functional unit

Define a suitable functional unit for a comparative study between two different types of paint.

  Calculate yield to maturity and bond prices

Calculate yield to maturity (YTM) and bond prices

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