単純な式チェッカーであるプログラムを書いています。プログラムが行うことは、ユーザーによる特定の入力が整形式かどうかをチェックすることだけです。使用しているファイルが 3 つあります。以下にそれぞれの部分を掲載します。私の質問は、正しくコーディングされている場合、ケース 1 の main.cpp にあります。私はスタックが初めてで、何をしたいのかを正しくコーディングしたかどうかわかりません。コードが式の後に : を取得する場合に備えて、入力が'('
スタックにプッシュされた場合、答えが)'
トップになり、それらがペアであるかどうかを比較します。次に、式が整形式かどうかを出力します。ありがとう。
コードは次のとおりです。
main.cpp
switch (choice){
case 1:
cout << "Current Setting: () " << endl;
cout << "Enter your expression followed by a ; : " << endl;
do {
cin >> answer;
if (answer = '(')
stack.push( '(' );
else
if (answer = ')' )
(stack.top() == '(')
while (answer != ';');
Stack.h
elemType top(void) const;
// precondition: this stack is not empty
// returns top element in this stack
// transformers
void push(const elemType& item);
// precondition: this stack is not full
// adds item to this stack
void pop(void);
// removes top element from this stack if exist
// remains empty otherwise