Stack Calculator

My project is a stack-based calculator that processes mathematical expressions using Reverse Polish Notation (RPN). It uses a stack data structure to store numbers and apply operations like addition, subtraction, multiplication, division, exponentiation, and modulus. The program reads input as numbers and operators, performing calculations by popping the top two values from the stack and pushing the result back. This method eliminates the need for parentheses, making it an efficient way to evaluate expressions.

One of the key features of the project is its error handling, which prevents issues like division by zero or stack underflow. The calculator ensures only valid operators are used and throws exceptions for invalid inputs. The project helped me strengthen my understanding of data structures, algorithm implementation, and debugging techniques. Moving forward, I plan to enhance the calculator by adding support for more operations and optimizing stack memory usage.