The programming Language is C++.
Index/Document.iwa
Index/ViewState.iwa
Index/CalculationEngine.iwa
Index/DocumentStylesheet-3245.iwa
Index/AnnotationAuthorStorage.iwa
Index/DocumentMetadata.iwa
Data/PresetImageFill5-15
Data/PresetImageFill2-12
Data/PresetImageFill4-14
Data/PresetImageFill0-10
Data/PresetImageFill1-11
Data/PresetImageFill3-13
Data/bullet_gbutton_gray-16
Index/Metadata.iwa
Metadata/Properties.plist
Metadata/DocumentIdentifier
3893289F-B984-41D0-9C3A-C71DD9F5A13D
Metadata/BuildVersionHistory.plist
doc
M6.2-4582-1
preview
preview-micro
preview-web
CS 3003 S/T Data Structures
Spring, 20201
Project #2
Calculator Simulation
Focus on: template stack, stack applications, and converting an infix to its equivalent postfix and evaluating the postfix expression.
TASK:
You will write a program that acts as a simple calculator, reading an infix algebraic expression with numbers and simple operations: +, -, *, / , (, and ). The program converts an infix expression into an equivalent postfix expression, and then evaluates the postfix expression, and then prints the result if input expression is correct otherwise prints error messages. Your program must interact with the user until the user quits.
REQUIREMENTS:
1. Your simulator must work with both single digit operands and multiple digit operands.
2. You may use your own stack template class or library
3. You must write a readme file that explains how to compile and run your project.
4. You must develop a design document to how your project works.
5. Your program must produce a correct result if an input expression is correct, otherwise an error message should be given.
6. You must comment your program properly (including proper comments and program synopsis). You may suffer up to 20 % percent penalty if you failed to do so.
7. You must put your functions and variables together to form a class—calculator.
8. You may have at least three functions: start, convert_infix_to_postfix, check_match, and evaluate_postfix in your class.
9. You should turn in your project on time; otherwise you will suffer 10% deduction per day.
Your program output may look like:
Enter your infix:
(3+4)*7
The result is:
49
Would you do it again (y/n): y
Enter your infix:
(312 + 40 ) * 3
The result is:
1056
Enter your infix: 23+(34-5 *3
Group operator did not match, please input again.
Would you do it again (y/n): n
THANK YOU!
Your main function may look like:
OOP Approach:
int main()
{
Calculator mycal;
mycal.start();
}
Your class may look like:
class Calculator
{
private:
string infix, postfix;
char answer;
public:
Calculator( );
void start( );
bool check_match();
void convert_infix_postfix( );
void
evaluate_postfix( );
int precedence(char);
};
Your start function may look like:
void Calculator::start( )
{
do {
cout<<”\nEnter an infix expression: “;
getline(cin, infix); //read the expression from keyboard
if(check_match())
{
convert_infix_to_postfix( );
evaluate_postfix( );
}
else
continue; //go back to the top of the loop
cout<<”\nDo it again y/n : “
cin >>answer;
if( tolower(answer) == ‘y’)
continue; //go back to the top of the loop
else{
cout<< “THANK YOU !”< break; //break out of the loop }
}while(true);
} DUE : March 23, Tuesday, 2021. Click the given link to turn in a copy of your source code, readme, your testing data and your program’s output, and your program design.
We provide professional writing services to help you score straight A’s by submitting custom written assignments that mirror your guidelines.
Get result-oriented writing and never worry about grades anymore. We follow the highest quality standards to make sure that you get perfect assignments.
Our writers have experience in dealing with papers of every educational level. You can surely rely on the expertise of our qualified professionals.
Your deadline is our threshold for success and we take it very seriously. We make sure you receive your papers before your predefined time.
Someone from our customer support team is always here to respond to your questions. So, hit us up if you have got any ambiguity or concern.
Sit back and relax while we help you out with writing your papers. We have an ultimate policy for keeping your personal and order-related details a secret.
We assure you that your document will be thoroughly checked for plagiarism and grammatical errors as we use highly authentic and licit sources.
Still reluctant about placing an order? Our 100% Moneyback Guarantee backs you up on rare occasions where you aren’t satisfied with the writing.
You don’t have to wait for an update for hours; you can track the progress of your order any time you want. We share the status after each step.
Although you can leverage our expertise for any writing task, we have a knack for creating flawless papers for the following document types.
Although you can leverage our expertise for any writing task, we have a knack for creating flawless papers for the following document types.
From brainstorming your paper's outline to perfecting its grammar, we perform every step carefully to make your paper worthy of A grade.
Hire your preferred writer anytime. Simply specify if you want your preferred expert to write your paper and we’ll make that happen.
Get an elaborate and authentic grammar check report with your work to have the grammar goodness sealed in your document.
You can purchase this feature if you want our writers to sum up your paper in the form of a concise and well-articulated summary.
You don’t have to worry about plagiarism anymore. Get a plagiarism report to certify the uniqueness of your work.
Join us for the best experience while seeking writing assistance in your college life. A good grade is all you need to boost up your academic excellence and we are all about it.
We create perfect papers according to the guidelines.
We seamlessly edit out errors from your papers.
We thoroughly read your final draft to identify errors.
Work with ultimate peace of mind because we ensure that your academic work is our responsibility and your grades are a top concern for us!
Dedication. Quality. Commitment. Punctuality
Here is what we have achieved so far. These numbers are evidence that we go the extra mile to make your college journey successful.
We have the most intuitive and minimalistic process so that you can easily place an order. Just follow a few steps to unlock success.
We understand your guidelines first before delivering any writing service. You can discuss your writing needs and we will have them evaluated by our dedicated team.
We write your papers in a standardized way. We complete your work in such a way that it turns out to be a perfect description of your guidelines.
We promise you excellent grades and academic excellence that you always longed for. Our writers stay in touch with you via email.