• ベストアンサー

通常の表記から逆ポーランド表記への変換法

通常の表記から逆ポーランド表記への変換法を教えて下さい!お願いします★

  • gettu
  • お礼率53% (25/47)

質問者が選んだベストアンサー

  • ベストアンサー
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.1

最初のうちは、演算式を括弧でくくることから始めましょう。 二項演算の形でくくっていきます。括弧は何重になっても構いません。 ただし演算の順序に気をつけてください。 そしていちばん内側のまたは一番早く演算する括弧の中の演算子を括弧の中で 一番後ろに動かします。ここからはこの3文字を1文字と見ます。括弧を外しながら 次々に変形していって括弧がなくなれば終わりです。 (例)z=a*b/c+d-e*f    (z=((((a*b)/c)+d)-(e*f)))    (z=((((ab*)/c)+d)-(ef*)))    (z=(((ab*c/)+d)-(ef*)))    (z=((ab*c/d+)-(ef*)))    (z=((ab*c/d+)-(ef*)))    (z=(ab*c/d+ef*-))    (zab*c/d+ef*-=)     zab*c/d+ef*-= 例題が数例参考URLにあります。       

参考URL:
http://risky.cs.inf.shizuoka.ac.jp/compiler2/sld018.htm

関連するQ&A

  • 逆ポーランド表記ってなんですか?

    で通常の表記から逆ポーランド表記へはどうやって変換したらいいですか?

  • 逆ポーランド法の表記について

    X*(Y-Z)を逆ポーランド表記で表すと、(1)XYZ-*ですか? (2)YZ-X*ですか?回答は(2)みたいなのですが、どうも違いがわかりません。

  • VB6.0で逆ポーランド記法のソースコードを教えてください

    VB6.0で逆ポーランド記法のソースコードを教えてください。 できれが、通常の計算式から逆ポーランドに変換して計算結果が求められるまで。 お願いします。

  • 逆ポーランド記法の変換法

    以前逆ポーランド記法の優先順位について質問したのですが、いまいち変換法が分かりません。 例1 A+B*(C+D)+E →ABCD+*+E+ ABとCDがなぜ一緒になるのか。 例2 (A+B)*(C-D)→AB+CD-* なぜ例1のABとCDは、ABCDになって、こっちはAB+CDなのか。なぜ*が一番後ろなのか。参考書は2冊ありますが、見ても?です。手順を詳しく説明して頂ける方、よろしくお願いします。

  • 逆ポーランド記法への変換方法を教えてください。

    Visual Studio C++ 6.0で逆ポーランド電卓のプログラムを作っていますが、式の変換方法がわからないので教えていただければ助かります。 たとえば (8 + 9 * -8) * 10 だと 8 9 -8 * + 10 * に変換できますが、  -(8 + 9 * -8) * 10 だとどう変換すればよいのかがわかりません。

  • 逆ポーランド記法

    C言語で逆ポーランド記法への変換をしようとしています. 演算子の優先順位の付け方がわかりません. 構造体の配列に数式を入れて,それぞれに優先度をつけてみたりしたのですが,いい方法でないように思います. 適切な方法を知っている方よろしくお願いします.

  • 陶器 ポーランド製など 表記 472? 

    ポーランド製などの陶器の底にブランドロゴや表記が記載されております。 その表記によく「472」と記載がありますが、この数字は何を意味する数字なのでしょうか? お詳しい方がいましたらご回答よろしくお願いします。

  • 電卓ソフトを作るには逆ポーランド法で良いのですか?

     プログラミングの勉強をしながら式入力型の電卓を作りたいと思い調べたところ「逆ポーランド法」を知りました。  まず四則演算出来るものを作り最終的には関数電卓を目指そうと思っているのですが、この「逆ポーランド法」を取り入れた計算プログラムを学べば良いのでしょうか?もっと適している他の手法はありますか? 公開されている式入力型の電卓ソフトはどのような手法でプログラムされているのでしょうか?(なかなか式入力型のサンプルが見つからなくて…。)  言語はActiveBasicを使用していますが、情報が少ない為VisualBasicのサイトで勉強しています。 宜しくお願いいたします。

  • ポーランド記法、逆ポーランド記法のプログラム

    ポーランド記法、逆ポーランド記法のプログラムがわかる方、是非教えてくださいm(__)m 言語は何でもいいのでお願いします~

  • C言語のリスト、スタック、キュー、逆ポーランド法など

    リスト、スタック、キュー、逆ポーランド法などプログラム例ののったサイト知りませんか?どうしてもわからないのですどうか教えてください。

専門家に質問してみよう