NOTE:
Remember, the project is to be submitted by the date and time. Late submissions will lose 10%
NOTE:
Code must be FULLY COMMENTED.
Include a COMPLETE TEST with your project.
You must appear on the time specified (see my announcement) to present your project. Failure to do so will earn a zero on the final.
_______________________________________________________________
Create a graphing calculator.
The calculator will take an expression made up of numbers, instances of a single variable, Trig functions, in addition to functions taking more than one argument such as Max(a, b)
The calculator will draw a graph of the function for a given interval and given increments:
queue<Point> PlotExpression (string expression, double low, double high, double increments);
This function takes an expression as a string, the high and low values for the function variable and the increments and produces a queue of points that represent the graph.
Make sure you handle:
Hints:
Shunting Yard Algorithm:
Handing Variables:
variables are just like numbers. So, When you see a variable, push into output queue.
Handling Functions:
Functions are like operators with highest precedence:
5*(Max(x,4) + 6) ->> 5 x 4 Max 6 + *
Notes:
Follow all the design guidelines discussed in class for the Shunting Yard algorithm, Evaluation algorithm etc.
No Test = No Score: This project is meaningless without complete and accurate testing.