• ベストアンサー

1+1=を11+=か11=+に置き換えて表現する表記法

1+1=を11+=か11=+に置き換えて表現する表記法をなんて言いますか? 1+1= 11+=か11=+に置き換えて格納するの倒置法じゃなかったでしたっけ??? そこでですが、計算の値は「倒置法」で格納した方が良いと聞きました。 それはなぜですか?

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

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

逆ポーランド記法でうれしいのは「演算子が出てきたらすぐに計算ができる」, 言い換えれば「演算子が出てきた順に計算ができる」ことにあります. 簡単に説明すると次のような感じ: 普通の式で「1+2」と見たときに, これを「3」としてはいけません. なぜなら, その後ろに「*3」と続くかもしれないからです. つまり, 先を見て計算するかどうかを判断しなければなりません. しかし, 逆ポーランド記法では「1 2 +」とあったらこの時点で計算をして「3」として構いません. それは, 「+」が来た時点で「その前にある 2つの数を足す」ことが確定するからです. このように「その場で計算できる」ことは大きなメリットです. 「スタック順に処理できるので都合は良い」ってのは, 確かにそうなんだけどちょっと微妙だなぁ. 実際には「どのように書いても結局スタックが必要」なので.

rescue98
質問者

お礼

ありがとうございます。 Windowsの電卓はポーランド記法ですか? どうやったらポーランド記法で計算しているか判断できますか?

その他の回答 (3)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.4

Windows に標準で付いている電卓は (少なくとも入力は) ポーランド記法ではないです. 四則演算については普通の中置記法, 関数については後置 (逆ポーランド) 記法です. 普通の電卓もこのパターンが結構多いです. 逆ポーランドで入力する電卓は... HP は出してる. TI も昔はあったんだけど今はどうだろ. 「ポーランド記法で計算する」というのは意味不明だけど (ポーランド記法は「記法」, つまり数式をどのように表現するかなので計算とは無関係), あらゆるものを関数で表現するときには形式が統一できて便利. Lisp なんかがそうです.

rescue98
質問者

お礼

ありがとうございます。 大変為になりました。

回答No.2

>1+1=を11+=か11=+に置き換えて表現する表記法をなんて言いますか? 「逆ポーランド記法」のこと? >そこでですが、計算の値は「倒置法」で格納した方が良いと聞きました。 誰に? 逆ポーランド記法は「計算式」であって「計算の値」ではないけど? 逆ポーランド記法の場合は、(電子計算機的には)スタック順に処理できるので都合はいいけど。

rescue98
質問者

お礼

ありがとうございます。 それです。「逆ポーランド記法」です。 「逆ポーランド記法はスタック順に処理できるので都合は良い」 正にそれです。なぜスタック順に処理できると都合がいいのですか?

  • MOMON12345
  • ベストアンサー率32% (1125/3490)
回答No.1

逆ポーランドのことでしょうか。 説明が長くなるので↓をリンクします。 http://ja.wikipedia.org/wiki/%E9%80%86%E3%83%9D%E3%83%BC%E3%83%A9%E3%83%B3%E3%83%89%E8%A8%98%E6%B3%95

rescue98
質問者

お礼

ありがとうございます。 それです。「逆ポーランド記法」です。 「逆ポーランド記法はスタック順に処理できるので都合は良い」 正にそれです。なぜスタック順に処理できると都合がいいのですか?

rescue98
質問者

補足

参考リンクを拝見させて頂きました。 後置記法というのですね。 倒置法・・後置法・・近いような遠いような・・ なるほど。 ()などの優先順位の記号を入力する必要がないという利点があったのですね。 いまやメモリは有り余るので、携帯とかメモリ容量が少ない計算機には良いということですね。 計算の精度が上がるのかと思っていたのでいまいちですね。 あまり必要がなさそうで、普通に中倒置法で計算したいと思います。

関連するQ&A