Casio Basic
ここではfx-5800Pなどに搭載されている比較的新しいCBについて説明する。計算は電卓に入力するように計算式を入力し、その他はBASICのように必要に応じて入力コマンドやループ、条件分岐コマンドなどを入力していく。
例としてオームの法則を利用し電圧、電流、抵抗のうち不明なもの1つを残りの2つから計算するプログラムを挙げる。
まず、最初の行で電圧、電流、抵抗のうちどれを求めるかユーザーに尋ねる文章を表示している。電圧(V)は1,電流(I)は2,抵抗は3を入力する。
(それ以外を入力するとそのまま表示される。そのためこのプログラムのように想定しない値が入力されたときにエラーになるような構文は避けるべきである。)
CBでは「”」で囲んだものは問答無用で表示される。次の?は入力を求めるコマンドであり、ユーザーが数値を入力してEXEキーを押すまで待機する。その値はSという変数に代入される。
Casio Basicでは基本的に変数名は1文字で、A-Z,θ,rが使用可能。すなわち変数の数は29個までとなる。グローバル関数、ローカル関数の概念は存在しない。
(そのため例えば画面に点を表示する関数、PxlOnではX,Yが処理用の変数として予約、使用されるため、誤ってその変数に書き込みを行うとプログラム全体がエラーで停止する。
Casio Basic(カシオ・ベーシック)とは、カシオが販売するプログラミング関数電卓に搭載される独自規格のプログラミング言語の通称である。
グラフ画面に四角形を描画する。情報が少なく、詳細不明。
文字列をすべて大文字に変換する。
文字列を指定した文字数分シフトした文字列を返す。
)
次のIf~IfEndでは、先程キー入力を求めSに代入された値がもし1なら、電圧を計算するため電流と抵抗を入力するよう求めている。入力された数はI,Rの変数に代入される。CBではIfを使う場合必ずThenが必要である。ThenとIfEndの間に書いた処理が、Ifで判定した条件が真である場合に実行される。
(もしここで例えば20+30と入力するとその場で計算が行われ、50が変数に代入される。)
次の行では、入力された値が代入された変数同士で計算を行っている。計算する場合は電卓のように計算式を入力するだけである。その結果は変数でもない、最後に実行した結果を保存するメモリに記録される。計算結果をすぐに表示したい場合は、▲のような形の出力コマンドを計算式のあとに入力する。すると計算結果が表示され、ユーザーが何らかのキーを押すまで待機する。
次の行にはまたIfがあるが、これは最初の入力で2を選んだときの処理である。そのため次のIfEndまでは読み飛ばされる。
その次もIf~IfEndがあるが、これは最初に3を選んだときの処理であるため、このあとの処理も飛ばされ、プログラムが終了する。CBの仕様として、先程の最後に実行した計算が保存されるメモリに入っている内容が表示される。