日本語プログラミング言語なでしこの公式掲示板

なでしこ の 掲示板

トップ 新規 検索

2020-11-12 20:44:29

Re①:計算履歴の残る計算

TKI さん

計算させたいだけなのか、文字列処理の実験として計算させたいのか、でだいぶかわってくると思います。

計算させたいだけなら、エディタの内容が計算式であることをチェックして「ナデシコする」のが簡単。
(……ひまわりにあった「計算する」命令ってなくなった?)

文字列処理をしたいなら条件分岐とか。

#-----------------------------------------------------------------------
計算エディタとはエディタ
そのテキストは「5+9*2」

計算ボタンとはボタン
計算ボタンをクリックした時は
  式は計算エディタのテキスト
  
  //式であることのチェック(てきとう)
  式の「[0123456789\+\-\*\/]」を「」にワイルドカード置換
  もしそれが空ならば
    
    式をナデシコする
    結果はそれ
    「{式}={結果}」を表示
    
  違えば
    「式じゃない」を表示
#-----------------------------------------------------------------------
 
#-----------------------------------------------------------------------
//乗除の優先はひとまず無視して、ヒトケタの数値と+-*/記号を左から計算する
計算エディタとはエディタ
そのテキストは「5+9*2」

計算ボタンとはボタン
計算ボタンをクリックした時は
  カウンタは、計算エディタの文字数-1
  データは計算エディタを文字列分解したもの
  
  結果はデータ¥0
  Iで0からカウンタまで繰り返す
    J=I+1
    データ¥Iで条件分岐
      「+」ならば、結果=結果+データ¥J
      「-」ならば、結果=結果-データ¥J
      「*」ならば、結果=結果*データ¥J
      「/」ならば、結果=結果/データ¥J
      違えば、//特になし
  計算エディタのテキストを表示
  結果を表示
#-----------------------------------------------------------------------

(編集パスワード送信)

子記事

親記事 (No.937)
返信した記事(元) (No.937)

この内容(No.941)に返信

この内容(No.941)をダウンロード

この内容(No.941)のテキスト表示





www.eznavi.net