問題タブ [postfix-notation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - C++ でスタックを使用して後置式を評価する
わかりました、私はすでに後置記法でそれを持っており、次のような後置記法を持つ文字列変数を送信しています: 5 15 2 *+ これが私のコードです:
}
私が得るエラーは「Deque iterator not deferencable」です
このエラーについて私が得ることができる助けは大歓迎です。ところで、私はここ数年 C++ を使用していないので、少しさびています。
java - 再帰を使用した後置式の評価
再帰を使用して後置式を評価するためのアルゴリズムが必要です。この後置式では、オペランドに複数の数字を指定できます。2 つのオペランドを区別するためにスペースが使用されます。したがって、「45 68 +」という表現は有効です。
逆に評価しようと思ったのですが、それは正しくないと思います。
誰かがアルゴリズムだけで私を助けてくれますか?
前もって感謝します。
regex - 貪欲に分割するが分割トークンを保持する正規表現?
私は次のような文字列を持っています:
私がやりたいのは、正規表現を使用してその文字列を分割し、次のようなものを取得することです。
現在、を使用して文字列を分割してい(?<=\>)|(?<=\<\=)|(?<=\>\=)|(?<=\=)|(?<=\<)|(?<=!\=)
ますが、次のように、目的の結果が得られません。
探している結果を得るには、正規表現で何を変更する必要がありますか?
c - C での後置評価
私は C のコースを受講しており、古典的な Postfix 評価問題のプログラムを作成する必要があります。さて、私はすでにこの問題をJavaで完了しているので、スタックを使用して数値をプッシュし、演算子を取得したときにそれらをポップする必要があることを知っています。そのすべてで問題ないと思います。私が抱えていた問題は、Cで後置式をスキャンすることです。Javaでは、charAtを使用でき、parseIntコマンドを使用できるため、簡単でした。ただし、Cで同様のコマンドを認識していません。したがって、次の形式の文字列から各値を読み取る方法を誰かが説明できますか?
4 9 * 0 - =
等しいところは、入力の終わりの信号です。
どんな助けでも大歓迎です。事前に感謝します:)
c - スタックとCを使用した後置評価
私はしばらくここにいて、同様の問題を抱えていましたが、間違った質問だと思います。少し背景を説明するために、フォームの接尾辞式を解決するCプログラムの作成を担当しました。
8 7-9 * =
私の問題は、私の教授が間違ったスタックコードを与えたということです。これは、スタックオーバーフロー(笑)エラーが常に発生していて、スタックがいっぱいになっていないためです。Visual Studio 2005を使用している場合は、次のコードを使用します。
今、私は自分のコードが少し野蛮であることに気づき、そのことをお詫びします。そうは言っても、どんな助けや入力でも大歓迎です、そして事前にすべてに感謝します。
さて、すべてを考慮した後、私は近づいていると思います。すべてが適切にスタックに入り、すべてが適切に読み取られています。ただし、私の新しい実装には、すべてを文字にして、使用する必要があるときに整数を変換することが含まれます。これが私のソースコードです。
私はかなりそれをいじっていることを覚えておいてください、それでランダムなprintfsと役に立たない変数がすべてデバッグ目的のためにあります。私がそれを実行するときはいつでも(例の入力3 5 + =で)私は得ます:
繰り返しになりますが、私はCにまったく慣れていないので、なんと厄介なコードを許してください。
c++ - BinaryOperadsサンプルプログラム
問題の説明:接尾辞式を評価するC++プログラムを作成します。プログラムはpostfix式を入力として受け取り、スタックを使用して処理し、必要な計算を実行した後に結果を表示する必要があります。
このプログラムでは、次の2項演算子のみが許可されています:+、-、*、/、^ [加算、減算、乗算、除算、べき乗]
後置式の処理中にエラーが発生した場合、プログラムは次のような意味のあるメッセージを表示する必要があります。エラー:ゼロによる除算は許可されていませんエラー:__演算子に必要な2つのオペランドエラー:無効な後置式
それで私を助けてください、私のプログラムはエラーを生成していますこれは私の試みです:
c++ - 接尾辞式の評価
postfix-expression評価を実装しようとしています。コードは次のとおりです。
しかし、コンパイルエラーが発生します(Linux(ubuntu 11.10)で実装しています):
これを修正するにはどうすればよいですか?
algorithm - 分流場アルゴリズムの出力をどうするか理解できない
私はwikiページを見てきました:http://en.wikipedia.org/wiki/Shunting-yard_algorithm
コード例を使用して最初の部分を作成しましたが、基本的には現在次のように変更できます。
3 + 4 * 2 / ( 1 - 5 ) ^ 2 ^ 3
の中へ3 4 2 * 1 5 − 2 3 ^ ^ / +
3 4 2 * 1 5 − 2 3 ^ ^ / +
しかし、取得するために使用する方法がわかりません3.00012207
そして、wikiのサンプルコードと説明は私には意味がありません.
誰か3 4 2 * 1 5 − 2 3 ^ ^ / +
が答えを評価して生成する方法を説明してください。前もって感謝します。コード例は必要ありません。良い説明または例の内訳だけです。
それは問題ではありませんが、私は .net C# を使用しています。
algorithm - 二分木に後置式を入れる方法は?
だから私は二分木と後置式「6 2 * 3 /」を持っていますそれを木に入れるアルゴリズムは何ですか? お気に入り、
c - whileループを使用して数値と演算子の系列をスキャンする方法は?
" 33 44 55 + 66 * + = " (つまり、逆ポーランド記法、RPN) のような stdin 入力があり、次のコードを使用して解析します。しかし、scanf("%d") は '+' を読み取り、それを破棄します。オペレーターを unget して、scanf(" %c ") によって読み取られるようにする方法は? 問題を解決する最善の方法は何ですか。ありがとう。