Question: please solve using C++ CS 2413 - Data Structures Spring 2020 Lab 2 1. Use a stack implementation, to check that a given an arithmetic


please solve using C++
CS 2413 - Data Structures Spring 2020 Lab 2 1. Use a stack implementation, to check that a given an arithmetic expression, that uses braces "{" & "}" or parenthesis "" &, ")" or brackets "[" & "]" as grouping symbols, is using them in a matching and balanced way. The book has an example function, called isBalance(), that takes the input string as an argument and returns O if it is unbalanced or 1 if it is balanced. (Examples below are given only for illustrative purposes, you may come up with your own.) Examples, given for illustration of outcome Input: exp="[]{}{[(( ())" Output: Balanced Input: exp = "[(1)" Output: Not Balanced Examples of other expressions 14* (6+5) A- (C+B)/[12*D] [8+ (38-14)-10] +12 {44-18+ (38-14)-10] +12)-7 (9/5) * celsius+32 3+4+4+5+ (4+3)-1 (3+4*x)/5-10* (y-5) * (a+b+c)/x+9* (4/x+9+x} /y) (A* (x^2} + {B*y)) +C 2. Use your implementation to convert well-balanced arithmetic expressions in infix notation into their equivalent expressions in postfix. (Separate your operands in the postfix notation using a single space) Remember the example in the book (see the table on next page). Infix: A-(B/C+(D%E*F)/G)*H --->>> Postfix: ABC/DEF*%G/+H*. Infix Character Stack Postfix Expression B A AB AB ABC ABC/ ABC/ ABC/D ABC/D ABC/DE ABC/DE ABC/DEF ABC/DEF*% ABC/DEF*% ABC/DEF*%G ABC/DEF*% G/ + ABC/DEF*% G/+H ABC/DEF* % G/+H.. - (+(%*
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
