What do I need to do for this ?

Please support our Computer Science advertiser: Learn about neural networks and artificial intelligence.
Reply

Join Date: May 2008
Posts: 4
Reputation: alannabrittany is an unknown quantity at this point 
Solved Threads: 0
alannabrittany alannabrittany is offline Offline
Newbie Poster

What do I need to do for this ?

 
0
  #1
May 13th, 2008
Problem
Math


Input File: MathIn.txt
Output File: MathOut.txt
Project File: Math


Mathematicians on the planet Earth, write math expressions using in-fixed notation. In this notation, math operators are written between the operands they operate on
(e.g., 2 + 3). On Mars, math strings are written in post-fixed form. In this notation, math operators are written after the two operands they operate on (e.g., 2 3 +).

The nice thing about post-fixed notation is that we don’t need rules of precedence to decide what math operator should be evaluated first. For instance, in the in-fixed math string 6 + 4 / 2, the rules of precedence dictate that we should divide before we add. Without these rules, there is an ambiguity in the expression. The same math expression written in post fixed notation is 4 2 / 6 +.

Fortunately programmers who write translators are from Mars, and they translate math expressions from in-fixed to post-fixed notation before evaluating them. Thus, we need not worry about the rules of precedence at run time.

To evaluate a post-fixed string, we start at the left most character and examine characters until we find an operator. Once an operator is found, it is applied to the two operands immediately before it, and then the operand and the two operators in the post-fixed string are replaced with the result. Then we continue from this point, repeating the procedure. When we reach the end of the string, there will only be one item left in the string, the result. Thus the in-fixed string 5 6 2 + 4 / - is equivalent to the post-fixed string
5 - (6 + 2) / 4, both of which evaluate to 3.

Inputs
The input file will contain math strings in post-fixed notation, one per line. Operands will consist of one digit. Operators and operands will be separated by one space. There will be no more than 80 characters in the math expressions.

Outputs
There will be one line of output for each math expression. The line will contain the value of the math expression.

Sample input
1 5 9 + 8 – +
5 6 2 + 4 / -
4 7 9 8 * + 2 + -

Sample Output
7
3
77
Reply With Quote Quick reply to this message  
Join Date: Oct 2007
Posts: 269
Reputation: sarehu is on a distinguished road 
Solved Threads: 22
sarehu's Avatar
sarehu sarehu is offline Offline
Posting Whiz in Training

Re: What do I need to do for this ?

 
0
  #2
May 14th, 2008
What do you mean "what do I need to do"? You need to write a program that meets the specifications. For example:

perl -pe '1 while (s^(-?[.\d]+) (-?[.\d]+) ([-+*/])(?!\d)^"$1 $3 $2"^ee)'
Reply With Quote Quick reply to this message  
Join Date: May 2008
Posts: 4
Reputation: alannabrittany is an unknown quantity at this point 
Solved Threads: 0
alannabrittany alannabrittany is offline Offline
Newbie Poster

Re: What do I need to do for this ?

 
0
  #3
May 14th, 2008
Originally Posted by sarehu View Post
What do you mean "what do I need to do"? You need to write a program that meets the specifications. For example:

perl -pe '1 while (s^(-?[.\d]+) (-?[.\d]+) ([-+*/])(?!\d)^"$1 $3 $2"^ee)'
i mean what should i write for the code in java
Last edited by alannabrittany; May 14th, 2008 at 11:26 pm.
Reply With Quote Quick reply to this message  
Join Date: Dec 2005
Posts: 5,850
Reputation: Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute 
Solved Threads: 749
Team Colleague
Salem's Avatar
Salem Salem is offline Offline
Void main'ers are DOOMed

Re: What do I need to do for this ?

 
0
  #4
May 15th, 2008
Well at last you've posted what you're going to use to implement it.

Post your attempt in this forum.
http://www.daniweb.com/forums/forum9.html

Evaluating RPN expressions typically uses a stack and goes like this
- see a number, push it onto the stack
- see an operator, pop the required number of operands off the stack, evaluate and push the result.
Repeat until end of input.
Reply With Quote Quick reply to this message  
Join Date: Nov 2004
Posts: 6,143
Reputation: jwenting is just really nice jwenting is just really nice jwenting is just really nice jwenting is just really nice 
Solved Threads: 213
Team Colleague
jwenting's Avatar
jwenting jwenting is offline Offline
duckman

Re: What do I need to do for this ?

 
0
  #5
May 19th, 2008
of course the reason you need to do it is to get a decent grade for your homework...
As people are clearly allowed to attack me but I'm not allowed to defend myself, I no longer post to this site.
Reply With Quote Quick reply to this message  
Join Date: May 2008
Posts: 3
Reputation: Stereolad is an unknown quantity at this point 
Solved Threads: 0
Stereolad Stereolad is offline Offline
Newbie Poster

Re: What do I need to do for this ?

 
1
  #6
May 22nd, 2008
I've just registered on here (hi all) but I am noticing a bit of a tend with the homework posts. Why not have a try, then post your efforts and get some feedback. You'll learn a lot more that way. I'm sure someone can recommend a good book about common algorithsm.

Gareth
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:



Other Threads in the Computer Science Forum
Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC