🌸 「なでしこ」
>
🍯 「貯蔵庫」
🍯 なでしこ3貯蔵庫
🌟新規
📒一覧
🔌
🔍検索
🚪ログイン
ログイン
していません。
[
📌文法
] [
🎨命令一覧
]
[編集モード] 逆ポーランド記法(その2)
逆ポーランド記法を計算する計算機です。
プログラム:
(→大)
(→textarea)
(→左右に配置)
# 入力画面を作る DOM部品オプション["テーブル背景色"] = ["blue","white","#fff0f0"] 式エディタ=「3 5 × 4 +」のエディタ作成。 計算ボタン=「計算(=)」のボタン作成 結果エディタ=「」のエディタ作成。 改行作成 「途中経過:」のラベル作成。改行作成。 LOGS=[["操作","スタック"]] 計算途中=LOGSからテーブル作成。 計算ボタンをクリックした時には LOGS=[["操作","スタック"]] S=(式エディタからテキスト取得) Sを逆ポーランド計算して答えに代入。 結果エディタに答えをテキスト設定。 計算途中の[0,0]をLOGSへテーブルセル変更。 ここまで。 ●(Sをスタックで)ログ表示とは ST=スタックを「,」で配列結合 LOGSに[S, "→"&ST]を配列追加 ここまで ●(Sを)逆ポーランド計算とは # --- (*2) スタックは[] Sを「 」で区切って反復 # --- (*3) C=対象 「+-*×/÷%」でCが何文字目 # 演算子か? ---- (*4) もし、そうならば # 値を2つ取り出す --- (*5) B=スタックから配列ポップ。 「pop {B}」をスタックでログ表示 A=スタックから配列ポップ。 「pop {A}」をスタックでログ表示 # 計算をしてスタックに積む --- (*6) D=0 もし、C=「+」ならば D=(A+B)。。。 もし、C=「-」ならば D=(A-B)。。。 もし、(C=「*」)または(C=「×」)ならば D=(A*B)。。。 もし、(C=「/」)または(C=「÷」)ならば D=(A/B)。。。 もし、C=「%」ならば D=(A%B)。。。 スタックにDを配列追加 「push {D}」をスタックでログ表示 違えば C=INT(C) # 数値ならスタックに積む --- (*7) スタックにCを配列追加。 「push {C}」をスタックでログ表示 ここまで。 # スタックをJSONエンコードして表示。 ここまで。 スタックから配列ポップ。# 答えを取り出す --- (*8) ここまで。
▶ 実 行 [F9]
クリア
一時保存
デバッグ
ブレイクポイント:
→ 再開
↓ 一行次へ
×
キャンバス: 幅
× 高
fef977320ac8403f76a3ef8121c2325b
2753
上書き保存
表示ページ
→直前に実行(または一時保存)した内容を復元
なでしこバージョン: v
素材のアップロード
ログイン
するとファイルをアップロードできます。