A counterexample in balanced parentheses
May I suggest a simpler solution: 
You need only a counter. it is incremented by 1 whenever you encounter an openning parenthesis "(" and is decreased by 1 whenever you encounter a closing parenthesis ")" 
The input is invalid if the counter drops below zero or is not zero by the end of scanning.

EDIT
since OP specified they must use a stack, we can follow @JollyJoker's advice: counter increament is implemented by a push operation, counter decrement by a pop one.  counter falling below zero is implemented by attemt to pop when the stack is empty. by the end of scanning the stack has to be empty.