C.Basicのインストール

C:Basic - アドイン Casio Basic
<トップページ>

内容の更新や修正を随時行います.

2016/03/27
追記 2017/11/23


C.Basic の使い方



C.Basicのインストール

C.Basic の初めてのインストールや最新バージョンへのアップデートを行う時、ダウンロードした C.Basic のプログラムファイルを グラフ関数電卓に転送する。

fx-9860Gシリーズに転送する場合は、電卓に同梱されている PCリンクソフト FA-124A とUSBケーブルを使う。そして、アドインプログラムである C.Basic for FX のプログラムファイル (CBASIC.g1a) を、一旦 FA-124A に登録した後(読み込んだ後)、FA-124A上の操作で PC へ転送すれば良い。

fx-CG20 や fx-CG50 に転送する場合は、同梱されているUSBケーブルでPCと電卓を接続すると、電卓はPCの外部ドライブとして認識される。そして、アドインプログラムである C.Basic for CG のプログラムファイル (CBASICCGxxx.g3a、xxxはバージョンを示す3桁の数字) を エクスプローラを使って外部ドライブである電卓にコピーすれば良い。但しコピー先は外部ドライブのルート (ストレージ領域)である。

- C.Basic をダウンロードする

fx-9860Gシリーズ用 - C.Basic for FX のインストール

- fx-CG20 / fx-CG50用 - C.Basic for CG のインストール
    ・ fx-CG20 / fx-CG50をPCとリンクして CbasicCG.g3a をコピーする

- メモリを最適化する




C.Basicをダウンロードする

最初に、最新バージョンをダウンロードし、適当なフォルダに解凍して保存する。C.Basic for FX は、拡張子が G1A の CBASIC.G1A ファイルが プログラムファイルだ。C.Basic for CG は、拡張子が G3A の CbasicCG.g3a がプログラムファイルだ。

▲Top に戻る


fx-9860Gシリーズ用 - C.Basic for FX のインストール

FA-124A をインストールする

FA-124Aの日本語マニュアルを併せてインストールするには、fx-9860GII に添付されているCDから言語に「日本語」を選んでインストールする。

▲Top に戻る


C.Basic を FA-124A に登録する

FA-124A を起動する

FA-124A を起動する。右ペインのツールバーに電卓のボタンが選択された状態になっている。
電卓のボタンにマウスを持ってくると、Main とポップアップされる。これは、メインメモリが選択されたことを示す。

FA124A_Start

左ペインが電卓内のファイルの状況を示し、右ペインがPCにあるファイルの状況を示す。今は右ペインに注目する。

fx-9860GII には、メインメモリとストレージメモリの2種類が内蔵されている。それに会わせて、FA-124A ではメインメモリとストレージメモリを切り替えて管理するようになっていて、起動した直後はメインメモリが選択されている。

アドインプログラムである C.Basic はストレージメモリに転送して使うので、ダウンロードした C.Basic はストレージメモリへ転送する必要がある。従って、起動時に メインメモリの状況を表示している FA-124A を、ストレージメモリの状況を示すように切り替える必要があるわけだ。 


 FA-124A でストレージメモリに切り替える

右ペインで、メインメモリの電卓ボタンの右にあるストレージメモリのボタンをクリックすると、ストレージメモリの状況を示す画面に切り替わる。

FA124A_Storage


 C.Basic を FA-124A へインポート(Import)する

右ペインに表示されている "Default" でマウスを右クリックして、メニューから "Import"をクリックする。

FA124A_Import

ここで現れる Insert CASIO File ダイアログで、

・ ファイルの場所(I): で CBASIC.G1A ファイルを保存したフォルダを選び、
・ ファイルの種類(T): で G1A File(*.g1a) を選び、
CBASIC.G1A を選んで、[開く(O)] ボタンをクリック。

FA124A_Select 

右ペインに、CBASIC.g1a が追加されていることを確認する。

FA124A_CBASIC

▲Top に戻る


C.Basic を fx-9860GII に転送する

fx-9860GII を FA-124A に接続する

fx-9860GII と PC をUSBケーブルで接続すると、fx-9860GII の画面に コネクションモードの選択画面 (Select Connection Mode) が現れる。

SelectConnectionMode 

ここで、[F1] (DataTrans) を押し、次にFA-124A のペイン (今度はペイン) に並んでいるボタンの一案左にある "Connect" ボタンをクリックすると、

FA124A_Connect

接続プロセスの進行状況が表示された後、fx-9860GII が FA-124A に接続される。

接続が完了すると、ペインに "User1" の表示が現れる。

FA124A_Connected


C.Basic を転送する

既に Import して 右ペインにある CBASIC.g1a にマウスカーソルを合わせてドラッグして、ペインの User1 でドロップする (ドラッグ&ドロップ)。

FA124A_Drag_Drop

初めてインストールした場合は、ペインの User1 をクリックして展開して、CBASIC.g1a が有れば、転送が成功している。

FA124A_Moved


転送を確認する

fx-9860GII で [MENU] キーを押して、MAIN MENU を表示してC.Basic アイコンが有ることを確認し、

MAIN_MENU_CBasic 

C.Basic アイコンを選んで [EXE] キーを押して、C.Basic を起動する。

起動すると、File List 画面になるので、そこで [SHIFT][MENU](SET UP) とキー操作すると、C.Basic のセットアップメニューが表示される。

CBasic_Setup 

一番下の行にあるファンクションメニューで、[F6](Ver.) を押して C.Basic のバージョンを表示し、正しいバージョンがインストールされていることを確認する。

CBasic_Ver 

▲Top に戻る


fx-CG20 / fx-CG50 用 - C.Basic for CG のインストール

fx-CG20 / fx-CG50 をPCとリンクして CbasicCG.g3a をコピーする

製品に同梱されているPCリンク用 USBケーブルを使って、電卓とPCを接続すると、電卓が外部ドライブとして認識されるので、エクスプローラでそのドライブを開くと、電卓内部のファイル構造が表示される。 

PCLink_PCDisp 
拡張子 g3a のファイルが幾つかあるが、これがアドインプログラムのファイルだ。ここに CbasicCG.g3a をコピーすれば良い。

電卓を起動し [MENU] キーを押し、メニューに C.Basic for CG のアイコンがあることを確認。
CG50_MENU 

CBasicCG アイコンにカーソルを移動し起動すると、
CBasicCG_FileList 

ファイルリストが表示されたら [SHIFT] [MENU] (SET UP) とキー入力すると セットアップ画面になる。
CBasicCG_SetUp 

[F6] (VERSION)  を押すと、バージョン情報が現れる。
CBasicCG_Version 

導入したバージョンが正しいことを確認できれば、インストール成功。

▲Top に戻る


メモリを最適化する

C.Basic 本体や、C.Basic で使う Casio Basic プログラムファイルは、いずれもストレージメモリに格納して使う。メモリへの書き込みを繰り返すと、ファイルの断片化が進んで実際に使えるメモリ容量が減ってしまうので、定期的にメモリの最適化作業を行う必要がある。そこで、C.Basic 本体を転送するタイミングでのメモリの最適化を勧める。

[MENU] キーを押して、MAIN MENU から Memory アイコンを選び、

MENU_Memory CG50_MENU_MemoryManager 

[EXE] キーで、Memory Manager を起動する。

MemoryManager CG50_MemoryManager 

ここで、[F5] (F5: Optimization) を押して、メモリの最適化を実行する。

Top に戻る





応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-9860GIICasioBasic、プログラミング入門グラフィックスプログラム関数電卓

リンク集 | ブログ内マップ




関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

プログラムライブラリ - マスターマインド Ver. 4 カラー版

プログラムライブラリ
<目次>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

2017/10/23
追記 2017/11/21
修正 2017/11/22
修正 2017/11/23


MASIOV4C (マスターマインド カラー版) - fx-CG20 / fx-CG50

[2017/11/23 修正] 作者が fx-CG50購入記念に提供頂いたスペシャルバージョン (MASIO50T) が更新・差し替え。よりカラフルに、より遊びやすくなった。


著作権者

ツル
[当ブログ読者]



対応機種

カラーグラフ関数電卓: fx-CG20 / fx-CG50



MASIOV4C について

Master Mind for Casio Calculator ⇒ Master Mind + Casio ⇒ MASIO と作者により銘々
既に公開している Ver. 3 をより本来の マスターマインドに近づける感じにした最終版 

Ver. 4 でカラー版なので、MASIO + V4C ⇒ MASIOV4C

Ver. 3 については、ゲーム ~ マスターマインド (fx-CG20 / fx-CG50) 参照



ゲームの遊び方

(Ver3からの変更点)
  • 左下から入力始め、右上へ進行
  • 判定を、白丸・黒丸以外にも、HBの下に数字を表示
  • Normal ModeとEasy Modoとを追加。SHIFTキーで切替え
  • Normal Modeでは、(ー)で回答表示すると、そのゲームでの♢獲得はなし。 次のゲームへ進む。
  • Normal Modeでは、6トライ以内に正解の場合、♢2個獲得。10トライ以内に正解の場合、♢1個獲得。
  • ♢の合計が10個になると、祝画面表示が見られる。
  • Easy Modeでは、正解で♢10個獲得でき、祝画面が見られる。
  • メイン画面左上に、現時点で獲得できる♢数を表示。
  • メイン画面に、Normal ModeではN。Eazy ModeではE を表示 (現在のモードがわかる)
  • いつでも、EXITキーにて終了可能。
  • p・表示は、[・] キーで現時点の獲得♢(prize)数を左上に表示

ゲームの動作画面

正解 (4 Hit) した時の画面



◇=10 になった時のお祝い画面




プログラムファイル

▶ Ver. 4: MASIOV4C.g3m ファイル (fx-CG20 / fx-CG50) のダウンロード

fx-CG50用スペシャルバージョン (Ver 4.3):MASIO50T.g3m (fx-CG50向け) のダウンロード
  プレイ画面の色を自由に選べる機能
  Easy Mode を 1~6 のみ使用でより遊びやすくなった




応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: CasioBasicプログラム電卓、マスターマインドゲームfx-CG20、fx-CG50

関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

fx-CG50 でフラクタル - シダの葉

2017/10/31
修正 2017/11/01
追記 2017/11/21
追記 2017/11/23

fx-CG50 でフラクタル - シダの葉


akatuki様のブログ "高機能電卓の情報" で  fx-CG50 国内発売記念として「シダの葉グラフィックス」の記事に興味深いフラクタルねたが投稿されました。

これをベースに sentaro様が fx-CG50 のアドインを作成されました。

fx-CG50 Shida Addin Result Image 
fx-CG50 のカラーグラフィックスの表現力がよく分かる結果画像ですね。
3万ドットの描画ですが、6秒程度で描画が終わります。


一方、このアドインを sentaro様 と管理人とで Casio Basic に移植して SHIDACG.g3m を作りました。これを走らせたところ描画が終わるのに40分程度 [2017/11/01 修正] かかりました。

fx-CG50 Shida Casio Basic PxlOn Result Image 
移植したものなので、描画はほぼ同じなのは当然です。fx-CG50 の高精細カラーLCDに1ドット単位で描画するには、PxlOn コマンドを使うしかありませんが、とても処理の重いコマンドです。このようなグラフィックス描画は、fx-CG50 の 純正Casio Basic には荷が重いということが分かります。

[2017/11/21 追記]
ところで、アドイン版 Casio Basic - C.Basic for CG アルファ版 で実行すると、54秒と大幅に高速化しました。さらに  fx-CG50 用チューンアップツール - Ptune3 で [F5] でプリセットされた設定にして 210MHz にオーバークロックするとさらに高速化した20秒で描画完了しました。
 
[2017/11/23 追記]
アドイン版 Casio Basic - C.Basic for CG α版 で、Ptune3 ([F5] の設定) 併用で整数演算を宣言して実行すると7秒で描画。アドインに近い高速化が達成され、C.Basic for CG の高速化の実力が分かります。なお、SHIDACG.g3m を変更して整数演算に対応した SHIDACGI.g3m を使う必要があります。

 
ちなみに、ViewWindows で論理座標系を設定して、PlotOn コマンドを使って描画すると1ドットが 3x3 ピクセルとなり、グラフィックス描画は粗いものになります。

fx-CG50 Shida Casio Basic PlotOn Result Image 
この結果画像では、高精細カラーグラフィックスの良さがありません。fx-CG50 Casio Basic での論理座標系は、fx-9860GII との互換性を保つために、1ドットが 3x3 ピクセルになっています。仕方有りません。

ちなみに、SHIDACG.g3m のソースで、下から3~4行目は

PxlOn G,H
'PlotOn H,G


としてあり、PxlOn G,H をコメントアウトし、'PlotOn H,G のコメントアウトを外してから実行すると、上の結果が得られます。

さて、現在 sentaro様により C.Basic for CG の開発が進められています。fx-9860GII用 C.Basic は、本ブログで既に応援しておりますが、それの fx-CG20 / CG50 対応版です。C.Basic はアドインに近い速度で Casio Basic を実行できる開発&実行環境です。

冒頭のアドインによる高速描画は、C.Basic for CG のポテンシャルを示していると言えます。是非とも フラクタルを C.Basic for CG で走らせてみたいものです。登場が楽しみです。



応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: CasioBasicプログラム電卓、fx-CG50、C.Basic
リンク集 | ブログ内マップ




関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

プログラムライブラリ - もぐら叩き (fx-CG20 / fx-CG50)

プログラムライブラリ
<目次>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

更新 2017/08/04
追加・修正 2017/08/15
追記・修正 2017/11/21


WHACK-A-Mole (もぐら叩き) - fx-CG20 / fx-CG50


著作権者

やす (Krtyski)
[当ブログ管理人]



対応機種

Casio fx-CG50 / fx-CG20 / fx-CG10

Casio fx-5800P 用は こちら
Casop fx-9860GII 用は こちら



プログラムの説明

Whack-A-Mole (もぐら叩き) のオリジナルは、非力な fx-5800P でアクションゲームを作れるかどうか試しに作ったものです。

これをカラー高精細液晶を搭載した fx-CG50 に移植しました。 fx-CG20 と fx-CG50 の Casio Basic プログラムは完全互換なので、どちらでも遊べます。

画面に色を付けています。また、設定を変更する画面では、fx-5800P に搭載されている便利な ? 命令が fx-CG20 / CG50 には無いので、e-Gadget 特製入力ボックス 2.1G を使ってプログラム全体を見直して、使い易くしました。

ゲーム機能は、fx-5800P 用と同じ。3×3 の配置の孔から モグラが顔を出した時に [1] ~ [9] の対応するテンキーで叩く、お馴染みのモグラ叩きです。

一定ポイントを超えると、偽モグラが顔を出したり、偽モグラと本物が一緒に顔を出すようになり、偽モグラを叩くとペナルティとなります。各種設定を変更する機能があり、難易度を自由に変えられます。

今回の移植にあたり、ゲーム進行を遅くするための ウェイト 設定を新設し、他のパラメータの初期値も変更しています。デフォルトで fx-5800P と同じ感じで遊べるようになっていると思います (若干易しめ)。



プログラムの使い方

もぐら退治の賞金稼ぎがゲームコンセプト:
  • ゲーム開始時に、LIFE ポイント (初期値 7) をもらう。
  • モグラ退治が遅い場合や間違って退治するとLIFE が減り、LIFE ゼロでゲーム終了!
  • モグラ1匹あたり、定額の資金 (FUND、初期値 20) をもらう。
  • モグラ退治に時間がかかるほど、退治費用 (COST) がかさむ。
  • モグラ退治が速ければ、FUND - COST が儲けとなり、賞金 PRIZE に加算される、
  • モグラが顔を出してから所定の時間がかかり COST が BURSTポイント (初期値 6) までかさむと、BURST となり LIFE が 1 減る、
  • モグラが顔を出してから時間がかかり過ぎて COST が TIME-OUTポイント (初期値 8) までかさむと、時間切れ (Time-Out) になって  LIFE が 1 減るだけでなく、賞金 PRIZE が BUST LOSS (初期値 25) だけごっそり減る 。
  • 賞金 PRIZE が INVOKE FAKE ポイント (初期値 200) に達すると、FAKE モードが発動する。
  • FAKE ONE モードは、偽モグラが出現する。放置しなければならない。手を出すと LIFE が 1 減る。
  • FAKE TWO モードは、偽モグラと本物モグラが同時に出現。本物を退治すると儲けがあるが、偽モグラを退治すると LIFE が 1 減る。
限られたLIFEで、どこまで賞金(PRIZE) を稼げるか、がんばろう!!

Life、Burst、Time-Out、Fund、Burst Loss、Invoke Fake、Wait の設定値は Settings で変更できます。



チューンアップした時の設定について

fx-CG20 や fx-CG50 で Casio Basicプログラムの動作を高速化する方法があります;
  • fx-CG20 のチューンアップツール Ptune2 を使ってオーバークロックする方法 ⇒ こちらを参照
  • fx-CG50 のチューンアップツール Ptune3 を使ってオーバークロックする方法 ⇒ こちらを参照
これらの環境で もぐら叩きを楽しむには、設定画面で Wait を 大きな数値に設定する必要があります。チューンアップの程度によりますが、Wait=50 など2桁にすれば fx-5800P と同じ感じで遊べると思います。試してみてください。



C.Basic for CG で実行する場合

アドイン版Casio Basic - C.Basic for CG で実行するとかなり高速化するので、設定画面で Wait を 2000 程度にするとちょうど良い速度になると思います。なお Wait に4桁を設定できるようにプログラムを変更しました。 



プログラムの構成

メインプログラム: WHACKAMO (これを起動する)
ゲーム本体: WAM

 Select Program First Screen Start Game
 Fake One Mode Fake Two Mode Keep Going
 Game Over Try Again Set Parameters



ダウンロード

プログラムファイルのダウンロード:Whack-A-Mole_Color.zip



ソースリスト

PDF と EXCELファイルのダウンロード
 [2017/08/16 変更] ソースリストにExcel ファイルを追加、ソースリストを訂正。

Whacka_a_Mole_Color


 


応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-5800PCasioBasic、プログラムライブラリもぐら叩き、プログラム関数電卓

リンク集 | ブログ内マップ


関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

投票 : あなたのプログラム電卓

楽屋裏 - プログラム電卓投票
e-Gadget


 更新 2016/12/04
更新 2017/11/19

[2017/11/19] fx-CG50 と fx-9860GII SD を選択肢に追加


少し前に、あなたの Best One カシオ電卓 で取り上げた「カシオ電卓発売50周年記念」で、好きな電卓の投票をやっていました。その投票結果で、プログラム関数電卓 fx-5800P が総合3位に入っていました。

そこで、プログラム電卓を使っている人たちの中で、実際にお気に入りのプログラム電卓や、欲しい機種は何だろう?と興味があるので、皆様にお聞きしたくなりました。当ブログはページビュー累計が10万を超え、訪問される方の累計が3万人を超えている程度です。少ないながらもプログラム電卓に興味をお持ちの方の母集団がここにあります。

投票期限は設けておりませんので、じっくり時間をかけて投票結果を見てゆけば、皆様のプログラム電卓の傾向が見えてくるかも知れません。
皆様の投票結果やコメントは、どなたでも見られます。

この投票は、営利目的ではありません。結果の利用は自由です。



投票01
プログラム電卓の中から、お気に入りの機種や欲しい機種を教えてください。
[2017/11/19] fx-CG50 と fx-9860GII SD を追加

投票02
プログラム電卓でのプログラム作成と利用について教えてください。なお機種名をコメント欄に記入してください(必須)。

投票03
プログラミング経験について教えてください。なおその時に使用した言語名をコメント欄に記入してください (必須)。

毎週1回投票できるので、お気に入りは何度でも投票できます。
下の投票ボックスの下にある 投票結果 をクリックすると結果が見られるので、参考にしてください。

投票01

 
投票02
電卓機種をコメント欄に記入(必須)
 
投票03
使用言語をコメント欄に記入 (必須)

.


各機種の価格については、Casio プログラム電卓の価格動向 をご参考に...

投票の項目にあるカシオの機種について...
fx-5800P は、構造化プログラミング可能な新世代Casio Basic搭載機のなかでは、一番低コストで入手可能な機種。

但し、プロセッサは最も遅く、Casio Basicの機能も他の機種よりも制限されている。

高速動作や多くのメモリが必要な本格ゲームを作るのでなければ、構造化プログラミングができるだけの実力があり、実用プログラムやゲームも作れる(当ブログで紹介している)。

関数電卓としては、現行プログラム電卓では最も使いやすい(と思う)。小型軽量な点も良い。

PCリンク機能はない。






fx-9860GII には、マイナーバージョンが2つある;
・初期型が SH3プロセッサを搭載
・後期型が SH4Aプロセッサを搭載

投票項目は、これらを区別している;
・初期型: fx-9860GII
・後期型: fx-9860GII 2

これらの違いは、液晶画面下の表記でわかる;
・初期型 (fx-9860GII)  : USB GRAPHIC
・後期型 (fx-9860GII 2) : USB GRAPHIC 2

現行プログラム電卓の中では、Ftune2 でオーバークロックすると最も高速になる隠れた高性能機。

Casio Basic 以外にアドインプログラムを走らせることができる。アドインは自分で作ることも可能。

PCリンク機能を備える。

fx-CG20 / CG10 (北米専用)は、高精細カラー液晶を搭載しているので、表現力の高いプログラムを作れる。

チューンアップツール Ptune2 (Ptune についても簡単に触れている)により高速化できるが、残念ながら fx-9860GII ほどに高速化できない。

プログラムを超高速化できる C.Basic for CG が上梓された。これを使えば 鈍足 CG10 / CG20 が超高速プログラミング環境に変貌する。

Casio Basic以外にもアドインプログラムを走らせることができる。自分でアドインを作ることも可能。

PCリンク機能を備える。




fx-FD10 Pro のハードウェア内部は fx-9860GII に近い。但し Casio Basic専用機で、fx-5800P の高機能機種の位置づけと言える。

アドインプログラムを走らせることはできない。

関数電卓として使う場合は、関数キーが少ないので2ステップやメニューからの選択と手数が増える。

一方、プログラム電卓としては、fx-5800P に近い使いやすさが考慮されている。

PCリンク機能を備えるだけでなくSDカードも使える。





fx-CG50 は処理速度が向上したことで、ようやく fx-9860GII の後継機種といえる。fx-CG10 / CG20 を購入する意味が無くなったと言える。

アドインプログラムも使えるが、Casio 純正のSDKは準備されていないので、個人が作成した fx-CG10 / CG20 用のSDK を工夫して使う必要がある。

機能面では fx-CG10 / CG20 とほぼ同じで、カタログ機能の改善やQRコード表示機能が追加された。

PCリンク機能を備える。







SDカードが使える以外は、fx-9860GII と完全互換。プログラムやデータの保管が容易にできるので、使ってみると非常に便利。

PCリンク機能を備える。














応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 



keywords: プログラム関数電卓
リンク集 | ブログ内マップ
関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

プログラムライブラリ - 複利計算プログラム

プログラムライブラリ
<目次>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

2017/11/18


複利計算プログラム:
CompInt

元金、年利(%)、返済期間(年)を入力すると、返済総額、月々返済額を表示する複利計算プログラム、3桁区切り出力機能付き。

入力ボックスや3桁区切りサブルーチンの使いこなしサンプルプログラムとして Casio Basic入門で作ったものを、さらに使いやすく改善したもの。



著作権者

やす (Krtyski) 
 [当ブログ管理人]



対応機種

Casio fx-5800P / fx-9860G / fx-9860GII / fx-CG20 / fx-CG50  (fx-FD10 Pro 対応可と思われる)



計算方法

最も単純な複利計算を行います(小数以下は切り捨て)。

[返済総額] = [元金] x (1 + [年利(%)]/100)[返済期間(年)]

必要に応じて改造してお使いください。



CompInt の使い方

fx-5800P - 8桁対応
1-C: に元金、2-R: に年利(%)、3-Y: に返済期間(年) を入力する。元金は最大8桁の入力が可能で、3桁区切りで表示される。これら3つが入力されると TOTAL に返済総額、MONTH に月々返済額が3桁区切りで表示される。
CompInt_1_5800P CompInt_5800P_2 

[EXIT] でプログラム正常終了


fx-9860Gシリーズ - 12桁対応
1-Cap: に元金、2-Rat: に年利(%)、3-Yrs: に返済期間(年) を入力する。元金は最大12桁の入力が可能で、3桁区切りで表示される。これら3つが入力されると Total に返済総額、Month に月々返済額が3桁区切りで表示される。
CompInt_9860G_1 CompInt_9860G_s 

[EXIT] でプログラム正常終了


fx-CG50 / CG20 - 12桁対応
1-Cap: に元金、2-Rat: に年利(%)、3-Yrs: に返済期間(年) を入力する。元金は最大12桁の入力が可能で、3桁区切りで表示される。これら3つが入力されると Total に返済総額、Month に月々返済額が3桁区切りで表示される。
CompInt_CG_1 CompInt_CG_2 

[EXIT] でプログラム正常終了



詳しい説明

Casio Basic入門51~54 Chapter9:簡単な換算プログラム - 入力ボックスの活用 を参照

ここで作った fx-5800P 用プログラムで、三桁区切り出力サブルーチンを 3DS に変更し、入力ボックスの入力を [DEL] でキャンセルする時は元の値(空白含む)に戻すように改善している。



プログラムソース

fx-5800P 用 - 元金入力は最大8桁
ソースリスト (PDFファイル) ダウンロード
 ※ 入力ボックスと3桁区切りサブルーチンのソースも含む.

CompInt2_src_fx5800P 


fx-9860GII 用 - 元金入力は最大12桁
全てのプログラムファイルを同梱した CompInt.zip のダウンロード
 ※ 入力ボックス INPI, INP と 汎用3桁区切りサブルーチン 3DS を含む.

CompInt2_src_fx9860G 


fx-CG20 / fx-CG50 用 - 最大15桁まで対応
全てのプログラムファイルを含んだ CompInt_fxCG.zip のダウンロード
 ※ 入力ボックス INPI, INP と汎用3桁区切りサブルーチン 3DS を含む.

CompInt2_src_fxCG 



応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: CasioBasic、プログラムライブラリプログラム関数電卓、3桁区切り出力、汎用サブルーチン

リンク集 | ブログ内マップ


関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

Casio Basic入門58

Casio Basic入門
<目次>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

 2017/11/04
追記 2017/11/05
修正 2017/11/11


 4. CasioBasicを使ってみる(続き)

Chapter 10 - 中級

◆ Chapter 10 の目標: 3桁区切り出力 - 汎用サブルーチンの作成

前回: Casio Basic入門57 を見る


これまでに、fx-5800P版3桁区切りサブルーチン (下記) が完成しました。

前回完成させた "高速3桁区切り出力・汎用サブルーチン" fx-5800P版:3DS
Z=0⇒Return

Int(log(Z))+1→K
(K≥4)+(K≥7)+(K≥10)→I

X→D:X→W
X=0⇒17-K-I→X
If X+K+I>17 Or K≥13
Then
X+K≥17⇒17-K→D
If K≥11:Then
2→D:X<2⇒X→D
W=0⇒2→D
IfEnd
Locate D,Y,Z
Return:IfEnd

X103Frac(Z÷X103)→U
Int(X103Frac(Z÷X106))→V
Int(X103Frac(Z÷X109))→W
Int(Z÷X109)→D

If K≤8:Then
Locate X,Y,X108W+X104V+U
I≥1⇒Locate X+K-2-(I=1),Y,","
I≥2⇒Locate X+K-6,Y,","
Else
X+K-6+(I≥3)→J
Locate J,Y,X107+X104V+U
Locate X,Y,X104D+W
Locate J+4,Y,","
Locate J,Y,","
I≥3⇒Locate X+K-9,Y,","
IfEnd


今回は、3DS の使いこなし例を紹介します。


Chapter 10-4
3桁区切りサブルーチン fx-5800P版 の使いこなし

3桁区切りサブルーチン 3DS は、手軽に使ってこそ価値があると思います。そこで、旧来の命令を使った手軽なプログラムで使いこなす例を紹介します。


指定位置に3桁区切り出力

かけ算プログラム:3DS TEST
"A"?→A
"B"?→B
"C"?→C
"A×B×C="
7→X:4→Y:ABC→Z
Prog "3DS"


これは、変数 ABC に値を入力させ、A×B×C を計算した結果を出力するプログラムです。

実行すると、

 A?

と表示されるので、例えば 12 と入力すると、A12 が格納され、

 A?
 12
 B?


と表示されます。次に 45 と入力すると、B45 が格納され、

 12
 B?
 45
 C?


と表示されます。最後に 78 と入力すると、C78 が格納され、さらに ABC の計算結果を表示します。

 45
 C?
 78
 A×B×C=42,120


4行目に A×B×C= に続いて3桁区切りで出力されています。

旧来の出力命令 " " が実行されると自動的に改行されるので、入力行が1行づつ下に下がります。改行が4行目に達すると、入力行は4行目に固定され、画面表示が1行上にスクロールされる、これが Casio Basic の仕様です。

従って、上のプログラムでは、A×B×C の計算結果が4行目に出力されることを理解していれば、Prog "3DS" の直前の設定で 4→Y で良いことが分かります。 A×B×C= に続いて計算結果を出力させるために、7→X と設定しています。


右寄せで3桁区切り出力

上のプログラムの最後に(一旦停止)を追加し、さらに3行追加しました。

かけ算プログラム:3DS TEST
"A"?→A
"B"?→B
"C"?→C
"A×B×C="
7→X:4→Y:ABC→Z
Prog "3DS"

"A×B×C="
0→X:4→Y:ABC→Z
Prog "3DS"


追加分は、右寄せで3桁区切り出力させるために 0→X と設定しています。

実行して、A=12、B=45、C=78 を入力し、以下の画面まで進みます。

 45
 C?
 78
 A×B×C=42,120


命令で一旦停止しているので、[EXE] で次に進むと、

 C?
 78
 A×B×C=42,120
 A×B×C=   42.120


と表示されます。乗算結果 ABC が右寄せで3桁区切り出力されています。


大きな桁の出力

上で最後に作ったプログラムに下記のような追加(赤文字で示す)を行います。

"A"?→A
"B"?→B
"C"?→C
"AxBxC="
7→X:4→Y:ABC→Z
Prog "3DS"

"AxBxC="
0→X:4→Y:ABC→Z
Prog "3DS"


"AxBxC="
" "
0→X:4→Y:ABC→Z
Prog "3DS"


そして、A=1234、B=4567、C=7891 を入力してみると、画面は先ず

 4567
 C?
 7891
 A4.44711351
X1010


となり、一旦停止を解除するために [EXE] を押すと

 C?
 7891
 A4.4411351
X1010   
← 指数表示が右寄せになっている
 A×44,471,135,098  
← 3桁区切り出力が右寄せになっている


となります。3DS の仕様により出力が右に溢れないように、左にずらして出力されており、仕様通りです。但し出力結果は見づらいものです。

さらに [EXE] を押すと、

 A4.44711351X1010
 A×44,471,135,098

 A×B×C=
    44,471,135,098


と、改行&右寄せが適していることが分かります。

0→X と設定した時に右寄せ出力する機能を追加したのは、このような出力が有効だと考えたからです。


大きな桁の出力を試すプログラム

上記のプログラムの最後にコードをさらに追加して、もっと大きな桁で出力するサンプルプログラムを作ってみます。

ちなみに上のプログラムでは、実行を一旦停止するために 旧来の命令 を使い、文字列出力のために " " 命令(出力文字無し)を使っています。この場合 " " は内部カーソル行を改行し、その次に実行される出力命令 " " は改行された位置に出力します。ところが内部カーソル行が4行目になると、内部カーソル行は常に4行目になるので、" "  命令での出力位置は常に4行目となります。

内部カーソル行が4行目になっているときに 4→Y: Prog "3DS" を実行すると、4行目の表示の上に3桁区切り出力が上書きされます。上書きせず改行して出力したい時は、画面を1行上にスクロールさせるために " " 命令 (出力文字なしで改行のみ)を利用しています。

これは、Casio Basic の旧来の命令 " "Locate コマンドを併用する時のチョットしたコツです。

3DS TEST Src for fx-5800P 

これを実行し、A=123、B=345、C=7891 を入力すると、

 456
 C?
 7891
 A×B×C=442590408


[EXE] を押すと、

 C?
 7891
 A×B×C=442590408
 A×B×C442,590,408


[EXE] を押すと、

 A×B×C=442590408
 A×B×C442,590,408
 A×B×C=
     442,590,408


さらに [EXE] を押すと、Cls で画面消去し、

 A×B×C=
     442,590,408


さらに [EXE] を押せば、

 A×B×C=
     442,590,408
 4×A×B×C=
    1,770,361,632




さらに、[EXE] を押して、

 4×A×B×C=
   1,770,361,632
 16×A×B×C=
   7,081,446,528


最後にもう一度 [EXE] を押すと、

 16×A×B×C=
    7,081,446,528
 256×A×B×C=

  113,303,144,447

と表示されます。改行して右寄せで出力すると、大きな桁が見やすくなると思います。

色々と試してみてください。


入力ボックスINPIと3桁区切り3DS の組み合わせ - 3DS DEBUG2 [2017/11/05 追記]
前回 Casio Basic入門57 (Chapter 10-3) で、デバッグ用プログラム 3DS DEBUG2 を紹介していますが、これは入力ボックス INPI と 3桁区切り 3DS を組み合わせて使っています。

INPI3DS は共に 出力位置 (X, Y) と入出力値 Z の意味で、変数 X, Y, Z をサブルーチンに渡す仕様なので、X, Y Z をうまく共有して使えます。改めてプログラムソースを紹介します。

3DS DEBUG2 Src for fx-5800P 


入力ボックスと3桁区切り3DS の組み合わせ - COMPINT [2017/11/11 修正]
Casio Basic入門51 (複利計算プログラム) で入力ボックスの使いこなしを紹介し、さらに3桁区切りサブルーチンを作り組み合わせました。今回の汎用サブルーチン 3DS の原点となったプログラムです。

そこで、[最終版] 複利計算プログラム (3桁区切り) のプログラムを示します。
入力ボックス2INPI 2.0INP 2.1 を利用します。

CompInt src for fx-5800P 




fx-5800P版 高速3桁区切り出力・汎用サブルーチン - 3DS

完成した fx-5800P 版 3桁区切り・汎用サブルーチンを改めて示します。

※ ダウンロード: 3DS for fx-5800P ソースファイル (pdfファイル)

3DS_src_fx5800P.jpg 




次回は、3DS を fx-9860GII と fx-CG50 に移植します。


つづく...

Casio Basic入門59Casio Basic入門G01 / 目次



応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 



keywords: fx-5800PCasioBasic、入力ボックス, プログラミング入門プログラム関数電卓

リンク集 | ブログ内マップ



関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

Casio Basic入門 -目次-

Casio Basic入門

新しい記事の公開に合わせて随時追記・修正します
最終: 2017/11/10


目 次

        - 1.はじめに: [1]

        - 2.プログラミングとは: [1]  

        - 3.fx-5800PのCasio Basicコマンド一覧: [2] 

        - 4.Casio Basicを使ってみる
            - Chapter 0 - プログラム作成・実行のポイント: [2] 
            - Chapter 1 - Getkey と Locate を使いこなす: [3] [4] [5] [6] [7] [8] 
            - Chapter 2 - 動きのあるプログラムを作る: [9] [10][11][12][13][14] 
            - Chapter 3 - 自由自在に入力する(入力ボックス): [15][16][17][18] 
            - Chapter 4 - 換算プログラムを作る: [19][20][21][22] 
            - Chapter 5 - サブルーチンを使いこなす: [23] [24] [25] [26] [27] [28] [29] [30] [31] 
            - Chapter 6 - プログラムを速くする(入力ボックス) [32] [33] [34] [35] [36] [37]  
            - Chapter 7 - 超入門 - ゼロからのプログラム作成と機能追加: [38] [39] [40] [41] [42]
            - Chapter 8 - Basic 命令を活用してみる: [43] [44] [45] [46] [47] [48] [49] [50]
            - Chapter 9 - 簡単な換算プログラム - 入力ボックスの活用: [51] [52] [53] [54] 
            - Chapter 10 - 3桁区切り出力 - 汎用サブルーチンの作成: [55] [56] [57] [58] [59] [60]  
            - Chapter 11 - 


        - 5.Casio Basicでグラフィックス / 目次
            - Chapter G01 - LCDと3つの座標系: [G01] 
            - Chapter G02 - グラフィックス画面の設定と描画: [G02] 
            - Chapter G03 - ClrGraphViewWindow[G03] 
            - Chapter G04 - Plot コマンド: [G04] 
            - Chapter G05 - Plot と ViewWindow: [G05] 
            - Chapter G06 - F-Line と線のスタイル設定: [G06] 
            - Chapter G07 - 点線とViewWindow: [G07]
            - Chapter G08 - ViewWindow の有効活用 / RclPict と RclCapt の違い: [G08] 
            - Chapter G09 - ViewWindow と設定変数: [G09] 
            - Chapter G10 - Circle コマンド: [G10] 
            - Chapter G11 - PxlOn コマンド: [G11]
            - Chapter G12 - PxlOff コマンド: [G12]
            - Chapter G13 - PxlChgコマンド: [G13] 
            - Chapter G14 - PxlTest( ) コマンド: [G14] 

            - Chapter G15 - 
            - Chapter G16 - 
            - Chapter G17 -
            - Chapter G18 -

詳細な目次へ



Casio Basic入門の概要

CasioBasic入門では、最初から順に読むことを前提に書き始めました。最初は基本的な部分から丁寧な説明を心がけていますが、進むにつれて同じ説明を省略するようになります。Casio Basicの命令やコマンドの使い方だけでなく、プログラミングの考え方、手法、知っておくと役立つ話題なども、折に触れ紹介しています。

当初、fx-5800P 使用を前提にして始めていますが、「4. Casio Basic を使ってみる」 で取り上げているプログラムは、簡単な変更で fx-9860GII や fx-CG50 への移植も可能です。具体的に fx-9860GII や fx-CG50 などへの移植を取り上げた記事もあります。

fx-CG20 / CG50 については、fx-9860GII の Casio Basic プログラムからの移植性が非常に高く、物理座標系で動くグラフィックスコマンド(TextPxlOnPxlOffPxlChgPxlTest) を使っていないプログラムは、fx-CG20 / CG50 に転送するだけで、ほぼ正常動作します。

Casio Basic - 機種別の互換性

fx-9860GII への移植 - 厄介な旧来の命令


「5. Casio Basic でグラフィックス」 は、グラフィックス機能を持たない fx-5800P ではなく、fx-9860GII を前提にしています。fx-CG20 / fx-CG50 は、カラー対応の部分を除き、fx-9860GII から比較的楽に移植できます。fx-9860GII と fx-CG50 で互換性のないコマンドの紹介を順次追加する予定です。


Casio Basic入門の読み方

PCなどでの構造化Basic や他の構造化高級言語でのプログラミング経験者には、最初から順に読み進めて頂ければ、Casio Basic が構造化プログラミング可能で、意外に使えることに気付かれると思います。

昔の古い電卓やポケコンでの行番号付きのBASICでのプログラミング経験しか無い方、およびプログラミング未経験者の方は、以下の順序で読み進めると良いと思います。

構造化高級言語によるプログラミング経験の少ない方、プログラミング初心者向けの進め方

2. プログラミングとは
   
4. Casio Basicを使ってみる [fx-5800P 向け。fx-9860GII や fx-CG20 / CG50 にも移植可能]
   
 ・Chapter 0 (プログラム作成・実行のポイント)
   
 ・Chapter 7 (超入門:ゼロからのプログラム作成と機能追加) ※1
   
 ・Chapter 8 (Basic コマンドを使ってみる) ※2
   
 ・Chapter 1 (Getkey と Locate コマンドを使いこなす)
   
 ・Chapter 2 (動きのあるプログラムを作る)
   
 ・Chapter 3 ~ Chapter 6 / Chapter 9 ~
   
5. Casio Basic でグラフィックス [fx-9860GII 他、グラフ関数電卓向け]

※1 fx-5800P プログラミング(超)入門
Chapter 7 (超入門:ゼロからのプログラム作成と機能追加) は、fx-5800P を始めて使うプログラミング未経験者を想定したものです。Chapter 8 へ繋がります。 ⇒ Chapter 7

※2 新世代 Casio Basic への導入
Chapter 8 は、カシオのプログラム電卓で古くから使われてきた命令から、新世代 Casio Basic への導入を目的にしています。古いプログラム電卓を使いこなしているが、新しい Casio Basic にはなじみの無い方向けです。 ⇒ Chapter 8

※3 PCなどでの高級言語プログラミングの経験者には...
管理人自身がこのカテゴリーに入ります。高級言語、特に構造化Basicでのプログラミング経験者は、当ブログで公開している Hit & Blow ( ここここ や ここ )、もぐら叩き (ここ) を見て、実際に fx-5800P で実行して頂ければ、Casio Basic の能力が分かると思います。さらに、改造や改善してみると Casio Basic がさらに分かると思います。

記事中で、Casio Basic コマンドリファレンスの個別項目へのリンクも入れています。このコマンドリファレンスは、管理人オリジナルのもので、取扱説明書に書かれていない多くの情報を提供しています。


新世代 Casio Basicについて

2006年発売の fx-5800P に搭載されたプログラミング言語は、カシオ自身が Basic-Like プログラミング言語と言っています。機能やコマンドが限定されているので、厳密にはその通りです。しかし実際に使ってみると、使えるコマンドに着目すれば、構造化プログラミングができる Basic であり、実用的な電卓プログラムが作れることに気がつきました。構造化プログラミングには諸説ありますが、当ブログでは Knuthが提案した「ブロック構造による分かりやすいプログラムを作ること」 が構造化プログラミングだ、との立場です。例外処理やエラー処理のために Goto で処理を一カ所に集中させるのは、プログラムが分かりやすくなるので良いものとして考え、それ以外は極力 Goto なしでプログラムを書くという考え方です。実際に多くの高級言語では、例外処理には内部的に Goto と同様に特定アドレスへの強制ジャンプをしています。

ここでは、カシオ製 プログラム関数電卓とグラフ関数電卓をひとくくりにして、プログラム電卓と呼ぶことにします。2006年に 発売された fx-5800P 以降のプログラム電卓に搭載されている Casio Basic は、構造化プログラミングが可能である点で、それ以前のものとは大きく異なります。

そこで、fx-5800P 以降の機種に搭載されている新しい Casio Basic を 当ブログでは、新世代 Casio Basic と呼んでいます。これらに共有しているのは、構造化プログラミングが可能で、テンキーだけでなく全てのキー([AC]キー除く)押下の検出が可能な Getkey コマンド、そして柔軟な Locate コマンドを搭載し、条件判定を 0で偽、0以外を真 (論理演算は 1 で真) となることです。これは一般的な高級言語と同じです。なお、プログラム関数電卓として販売されている fx-71F や fx-72F に搭載されている言語は、ここでいう新世代 Casio Basic ではありません。

<新世代Casio Basic搭載機>
  - fx-5800P
  - fx-9860G (OS ver 2.以降推奨)
  - fx-9860GII (OS ver 2 以降推奨)
  - fx-CG10
  - fx-CG20
  - fx-FD10 Pro
  - fx-CG50
  ※ OS は最新バージョンへアップグレードできます

初級・中級の表記について
  初級 - Casio Basic の命令/コマンドの使い方を覚えるレベル
  中級 - プログラムの構造やロジック、変数の使い方を工夫するレベル
  中級者で十分使いこなせるので、上級と言う表記はありません

Casio Basic でのグラフィックス プログラミングを取り上げています。先ずは グラフィックスコマンドを徹底的に調べている段階なので、別系統で連載します。これまでの「Casio Basicを使ってみる」の連載は、継続予定です。
 ⇒ Casio Basicでグラフィックス


詳細な目次

1. はじめに
      ⇒ Casio Basic入門1

2. プログラミングとは
      ⇒ Casio Basic入門1

3. fx-5800P CasioBasicのコマンド一覧
      ⇒ Casio Basic入門2

4. CasioBasicを使ってみる
[fx-5800P 向け] (fx-9860GII、fx-CG20、fx-CG50にも移植可)

Chapter 0

プログラム作成・実行の操作ポイント

      - プログラム新規作成
      - プログラム編集
      - プログラム実行
      - →命令 (代入命令)
      - ?命令 (入力命令)
      - 命令 (出力命令)

      ⇒ Casio Basic入門2

Chapter 1 - 初級
Getkey と Locate コマンドを使いこなす
キーコード取得プログラム - GET KEYCODE を作る 

      - Locate
      - Getkey
      - Doループ
      - Whileループ
      - Isz命令 (インクリメント・ジャンプ命令)
      - " " 出力命令
      - EngOn / EngOff
      - If 文
      - ⇒命令 (条件ジャンプ命令)


      ⇒ Casio Basic入門3
             - Chapter 1-1: Getkey、Locate
             - Chapter 1-2: Goto / Lbl ループ、EngモードとLocate

      Casio Basic入門4
             - Chapter 1-3: 繰り返し処理 Doループ

     Casio Basic入門5
             - Chapter 1-4: Locateコマンドと出力命令" "の違い
             - 
Chapter 1-5: 思い込みの罠 - Locateの表示桁数
             - Chapter 1-6: プログラム完成
             - Chapter 1-7: 思い込みの罠(補足) - 1桁のキーコード

      ⇒ Casio Basic入門6
             - Chapter 1-8: DoループとWhileループ再び

      Casio Basic入門7
             - Chapter 1-9: Locateコマンドで陥るバグ
             - Chapter 1-10: 利用価値の高い⇒命令(条件ジャンプ)を使ってみる

      ⇒ Casio Basic入門8
             - Chapter 1-11: ダイナミックな表示機能の実装
             - Chapter 1-12: プログラムのバックアップ


Chapter 2 - 初級
動きのあるプログラムを作る
反射ゲーム - REACT を作る

      - Lbl / Goto ループ
      - Dsz命令 (ディクリメント・ジャンプ命令)
      - Int( ) / Frac( ) 関数
      - Break コマンド
      - 例外処理 / 例外フラグ
      - 複数条件分岐 - Else If
      - ブロック構造 (構造化プログラミングの勧め)
      - アルファベット小文字の表示
      - For~To~Next
      - Progコマンド(サブルーチン)

      ⇒ Casio Basic入門9
             - Chapter 2-0: Lbl / Gotoループを使う
             - Chapter 2-1: 回る羽根を作る

      ⇒ Casio Basic入門10
             - Chapter 2-2: ランダム関数を使う
             - Chapter 2-3: 再びGetkeyとDoループでカウンタ計測
             - Chapter 2-4: 例外処理・例外フラグ・Breakコマンド

      ⇒ Casio Basic入門11
             - Chapter 2-5: プログラム制御
             - Chapter 2-6: 複数条件分岐の記法

      ⇒ Casio Basic入門12
             - Chapter 2-7: ゲーム終了条件の実装

      ⇒ Casio Basic入門13
             - Chapter 2-8: ゲーム進行に変化を付ける
             - Chapter 2-9: ゲームの仕上げ - 構造化プログラミング

      ⇒ Casip Basic入門14
              - Chapter 2-10: For文とProgコマンドを使ってみる


Chapter 3 - 中級
自由自在に入力する
入力ボックス - INPI を作る

      - 配列変数
      - 論理演算コマンド
      - For~To~Next
      - Progコマンド(サブルーチン)
      - サブルーチンの使い方
      - アルファベット小文字の表示
      - デバッグ方法
      - ド・モルガンの法則
      - 変数の使い方 - 予約変数と使捨て変数
      - 変数の適用範囲

      ⇒ Casio Basic入門15
             - Chapter 3-0: 動作確認用メインルーチンを作る

      ⇒ Casio Basic入門16
             - Chapter 3-0(続き): 「入力ボックス」を作る - 論理演算をする

      ⇒ Casio Basic入門17
             - Chapter 3-1: 「入力ボックス」プログラムの改造

      ⇒ Casio Basic入門18
             - Chapter 3-2: 入力ボックス - 末尾文字の削除機能を追加する
                デバッグ方法、ド・モルガンの法則、変数の適用範囲を理解する


Chapter 4 - 中級
換算プログラムを作る
和暦・西暦変換プログラム - YEAR CONV を作る

      - Progコマンド (サブルーチン)
      - サブルーチンの使い方
      - 変数の使い方 - 予約変数と使い捨て変数

      ⇒ Casio Basic入門19
             - Chapter 4-0: 和暦・西暦換算プログラム - 完成状態の紹介
             - Chapter 4-1: 最初にプログラム構造を考える
             - Chapter 4-2: 和暦・西暦換算プログラムを実装する

      ⇒ Casio Basic入門20
             - Chapter 4-3: オマケ機能の追加 - 数の桁数の求め方

      ⇒ Casio Basic入門21
             - Chapter 4-4: キー長押しによるメニュー選択

      ⇒ Casio Basic入門22
             - Chapter 4-5: キー長押しの処理を作る
             - Chapter 4-6: サブルーチンを使いこなす


Chapter 5 - 中級
サブルーチンを使いこなす

世界時間換算プログラム - TIME ZONE を作る

      - 入力ボックスを使う
      - サブルーチンを活用した効率的な機能追加
      - 変数の使い方 - 予約変数と使捨て変数
      - キー長押しの活用
      - 矢印キーによる循環項目選択

      ⇒ Casio Basic入門23
            - Chapter 5-0: プログラムの仕様
            - Chapter 5-1: TIME ZONE プッログラムの完成形

      ⇒ Casio Basic入門24
            - Chapter 5-2 Getkey、入力ボックス、Locate の活用

      ⇒ Casio Basic入門25
            - Chapter 5-3: 同様の機能を追加する

      ⇒ Casio basic入門26
            - Chapter 5-4: 少し異なるルーチンを、分かりやすく追加する

      ⇒ Casio Basic入門27
            - Chapter 5-5: 少し異なるルーチンを、分かりやすく追加する(2)

      ⇒ Casio Basic入門28
            - Chapter 5-6: キー長押しによる機能呼び出し

      ⇒ Casio Basic入門29
            - Chapter 5-7: 矢印キーの活用

      ⇒ Casio Basic入門30
     - Chapter 5-8: 類似処理による機能追加

      ⇒ Casio Basic入門31
     - Chapter 5-9 キー長押しによる別機能の呼び出し


Chapter 6 - 中級
プログラムを速くする
入力ボックスの高速化と拡張 - 入力ボックス 2.0 を作る

      - 処理速度の遅いコマンド/命令を見極める
      - プログラムロジックの見直し

      ⇒ Casio Basic入門32
     - Chapter 6-0: コマンドや命令の処理速度を比較する
     - Chapter 6-1: 具体的に対処する遅い処理を見つける

      ⇒ Casio Basic入門33
     - Chapter 6-2: ロジックの見直しでプログラムを高速化する

  ⇒ Casio Basic入門34
     - Chapter 6-3: 処理速度を意識して機能拡張する

  ⇒ Casio Basic入門35
     - Chapter 6-4: 処理速度を意識して機能拡張する

  ⇒ Casio Basic入門36
     - Chapter 6-5: キーリピートを抑制する

  ⇒ Casio Basic入門37
     - Chapter 6-6: fx-5800P から fx-9860GII へ移植する


Chapter 7 - 超初級
ゼロからのプログラム作成と機能追加
温度換算プログラム- TEMP CONV を作る

      - 初めての fx-5800P プログラミング
      - プログラム作成の手順
      - プログラムの実行方法
      - ?(入力)命令

  ⇒ Casio Basic入門38
     - Chapter 7-1: 最もシンプルなプログラム

  ⇒ Casio Basic入門39
     - Chapter 7-2: 同様の機能を追加する

  ⇒ Casio Basic入門40
     - Chapter 7-3: 選択肢3つの換算プログラムに拡張する

  ⇒ Casio Basic入門41
     - Chapter 7-4: バグの原因と対処 - フラグの利用

  ⇒ Casio Basic入門42    
     - Chapter 7-5: プログラムの効率化


Chapter 8 - 初級
Basic 命令を使ってみる
温度換算プログラム - TEMP CONV を作る

   - ?(入力)命令を Baisc コマンでに置き換える
     ・ Getkey と Do ループ の使い方
     ・ 入力ボックスの使い方
   - ⇒(条件分岐)命令のメリット
   - キー入力制御
     ・ Getkey と While ループの使い方

  ⇒ Casio Basic入門43
     - Chapter 8-1: メニュー選択に Getkey を使う

  ⇒ Casio Basic入門44
     - Chapter 8-2: 入力ボックスを使ってみる

  ⇒ Casio Basic入門45
     - Chapter 8-3: 換算プログラムの入力ボックスを実装する

  ⇒ Casio Basic入門46
     - Chapter 8-4: テンキー以外のキー入力を利用する

  ⇒ Casio Basic入門47
     - Chapter 8-5: [EXIT] キーで正常終了させる

  ⇒ Casio Basic入門48
     - Chapter 8-6: グラフ関数電卓用入力ボックスを準備する

  ⇒ Casio Basic入門49
     - Chapter 8-7: グラフ関数電卓へプログラムを移植する

  ⇒ Casio Basic入門50
     - Chapter 8-8: グラフ関数電卓用に表示を最適化する


Chapter 9 - 初級
簡単な換算プログラム - 入力ボックスの活用
福利計算プログラム - CompInt を作る

   - Getkey と Do ループ の使い方
   - 入力ボックスの使い方
   - 数値の3桁区切り表示をサブルーチンで実装
   - 3桁区切りのロジックを改善(高速化)

  ⇒ Casio Basic入門51
     - Chapter 9-1: fx-5800P で複利計算プログラムを作る

  ⇒ Casio Basic入門52
     - Chapter 9-2: fx-5800P で3桁区切り表示をする

  ⇒ Casio Basic入門53
     - Chapter 9-3: fx-5800P での3桁区切り表示を高速化する

  ⇒ Casio Basic入門54
     - Chapter 9-4: fx-5800P での3桁区切り表示を改良する


Chapter 10 - 中級
3桁区切り出力 - 汎用サブルーチンの活用
簡単な計算プログラム - Calc を作る

   - 数値の3桁区切り出力を汎用サブルーチン化
   - 旧来の出力命令 " " 、出力命令 の癖
   - 大域変数の使いこなし

  ⇒ Casio Basic入門55
     - Chapter 10-1: 高速3桁区切り出力サブルーチンの特長

  ⇒ Casio Basic入門56
     - Chapter 10-2: 高速3桁区切り出力サブルーチンの評価と改善

  ⇒ Casio Basic入門57
     - Chapter 10-3: 3桁区切りサブルーチン fx-5800P版 右寄せ出力機能の追加

  ⇒ Casio Basic入門58
     - Chapter 10-4: 3桁区切りサブルーチン fx-5800P版の使いこなし

  ⇒ Casio Basic入門59
     - Chapter 10-5: 3桁区切りサブルーチン グラフ関数電卓版


5. Casio Basicでグラフィックス [fx-9860G (OS2.04) 向け]

Casio Basicでグラフィックス
グラフィックスコマンドの仕様や特徴

  ⇒ Casio Basic入門G01
     - Chapter G01: LCDと3つの座標系

  ⇒ Casio Basic入門G02
     - Chapter G02:  グラフィックス画面の設定と描画

  ⇒ Casio Basic入門G03
     - Chapter G03: ClrGraphViewWindow

  ⇒ Casio Basic入門G04
     - Chapter G04: Plot コマンド

  ⇒ Casio Basic入門G05
     - Chapter G05: PlotViwWindow

  ⇒ Casio Basic入門G06
     - Chapter G06: F-Line と 線のスタイル設定

  ⇒ Casio Basic入門G07
     - Chapter G07: 点線と ViewWindow

  ⇒ Casio Basic入門G08
     - Chapter G08: ViewWindow (直交座標系) の有効活用 / RclPictRclCapt の違い

  ⇒ Casio Basic入門G09
     - Chapter G09: ViewWindow と設定変数

  ⇒ Casio Basic入門G10
     - Chapter G10: Circle コマンド

  ⇒ Casio Basic入門G11
     - Chapter G11: PxlOn コマンド

  ⇒ Casio Basic入門G12
     - Chapter G12: PxlOff コマンド

  ⇒ Casio Basic入門G13
     - Chapter G13: PxlChg コマンド

  ⇒ Casio Basic入門G14
     - Chapter G14: PxlTest() コマンド

  ⇒ Casio Basic入門G15
     - Chapter G15: 


応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-5800Pfx-9860GIICasioBasicプログラミング入門プログラム関数電卓

リンク集 | ブログ内マップ
関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

プログラムライブラリ - 入力ボックス 2.1G

プログラムライブラリ
<目次>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

2015/01/23
2015/08/05 記述修正
2016/12/24 追記修正
2017/11/06 修正





入力ボックス 2.1G - fx-9860GII、fx-CG20、fx-CG50 専用
INPI、INP、IN 2.1G - 汎用サブルーチン

※ g1mファイルのダウンロード・リンクを追加 [2015/02/28]
※ g3mファイルのダウンロード・リンクを追加 [2016/04/17]


著作権者

やす (Krtyski)
[当ブログ管理人]



対応機種

Casio fx-9860GII / fx-CG20 / fx-CG50 専用
(fx-FD10 Proでも動作すると思われます)

Casio fx-5800P 専用は こちら



プログラムの説明

INPI / INP / IN 2.1G (グラフ関数電卓 fx-9860GII、fx-CG20、fx-CG50 専用) は、fx-9860GII や fx-CG20、fx-CG50 のCasio Basic プログラミングで、好みの位置に好みの桁数で数値を入力させる機能を実装する、汎用サブルーチンです。

画面構成を崩さずに数値を入力させるプログラムを簡単に作れるので、換算プログラムなどに最適です。

Casio Basic の入力命令 ? は、入力行を選べず、入力結果は改行されて右端に表示され、入力するたびに画面がスクロールするので、入力位置と入力結果の表示位置を選べません。もう一つの入力コマンド Getkey はキー1つが押されたことを検出するものなので、そのままでは複数桁の入力や編集に使えません。

そこで画面設計をしたプログラムで使うため、Windows などの Edit Box に近い入力機能をCasio Basic に提供するのが入力ボックスです。

以下の3種類の入力ボックスを用意しました。

1. INPI 2.1G
0以上の整数入力のみに対応。0以上の整数入力のみを行わせたいプログラムで使うことを想定しており、負数や小数入力のエラーチェックが不要になる。

2. INP 2.1G
0以上の整数/小数入力のみに対応。0と正の小数のみの入力を行わせたいプログラムで使うことを想定し、負数入力のエラーチェックが不要になる。

3. IN 2.1G
正負小数/整数の入力に対応、最も汎用性のある入力ボックス。


INPI、INP、IN 2.1G (fx-9860GII & fx-CG20 専用) の詳しい説明は、Casio Basic入門37 を参照。



入力ボックスの概要

Basic コマンドの使い方は、

[コマンド] [設定1],[設定2],[設定3], ...

といった使い方になります。

一方、入力ボックスはサブルーチンです。サブルーチンを呼びだす時に色々な設定を一緒に指定することができません。そこで、

[入力ボックスの設定]
Prog "入力ボックス"
[結果の受け取り]


といった書式になります。

入力ボックスには、使い勝手を考えて複数のバージョンがあります。

入力する数値の種類キーリピート抑制が
バージョン(Ver2.1G)
プログラム名
0以上の整数INPI Ver2.1GINPI
0以上の小数と政数INP Ver2.1GINP
正負の小数と整数IN Ver2.1GIN

入力する数値の種類により使い分けると、入力制限にうまく利用できます。


プログラムの使い方

メインルーチンから以下の書式で呼び出します。

→X:→Y:→D:→E
Prog "INPI"
Z→■


□ は任意の数、■ は任意の変数、但し使用機種の画面範囲内に収まるように設定する。
  参考 fx-9860GII、fx-CG20: 1≦X≦21、1≦Y≦7、X+D≦21

- X: 入力ボックス表示開始桁
- Y: 入力ボックス表示開始行
- D: 入力ボックス桁数
- E: 入力ボックスインジケータの選択
   E=2: 画面右下に <EXE>:ENTER と表示
   E=1: 画面右下に ▶E と表示
   E=(上記以外): インジケータ非表示
- Z: 入力ボックスで確定した数値が代入される

入力ボックス内部では、上記5つの変数以外に、CIF (F は、INPIN の場合のみ)、行列を用いています。これらの変数は、入力ボックスを呼び出すたびに格納されている数値が変更されます。メインルーチンでこれらと同じ変数を使う場合は、入力ボックスを呼び出すたびに変更されても良い変数として使ってください。特に行列は、入力ボックス内で 領域確保を行い、メインルーチンに戻る前に領域解放を行いますので、それを念頭に置いて使ってください。



使用例

呼び出しルーチンのプログラム例を掲載します。
・ 予約変数は S, T, U, V
これを元に色々なプログラムを作ってみると、楽かも知れません。

0→S:0→T:0→U:0→V  [予約変数の初期化]

Locate 1,1,"1:"      [初期画面表示]
Locate 1,2,"2:"
Locate 1,3,"3:"
Locate 1,4,"4:"

While 1            [無限ループ、[AC] キーでプログラム終了]

-1→M             [メニュー選択] 
Do:Getkey→K
LpWhile K=0
K=35⇒1→M
K=36⇒2→M
K=37⇒3→M
K=21⇒4→M

Locate 1,4,"        " (スペース16個)

If M=1:Then        [INPIを使った入力処理]
3→X:1→Y:8→D:2→E
Prog "INPI":Z→S
Else If M=2         [INPを使った入力処理]
Then
3→X:2→Y:6→D:2→E
Prog "INP":Z→T
Else If M=3         [INを使った入力処理]
Then
3→X:3→Y:4→D:1→E
Prog "INPI":Z→U
Else If M=4
Then
3→X:4→Y:2→D:1→E
Prog "INPI":Z→V
IfEnd:IfEnd
IfEnd:IfEnd

Locate 1,4,"Z="
Locate 3,4,Z

WhileEnd

※ 仕様例プログラムファイル (INTEST) のダウンロード
 - input_test.g1m (fx-9860GII用)
 - input_Test.g3m (fx-CG20 用) 



プログラムファイル

ファイル一式のダウンロード

fx-9860GII用プログラムファイル一式 (ZIPファイル)
  INPI.g1m, INP.g1m, IN.g1m, INTEST.g1m を含む

fx-CG20用プログラムファイル一式 (ZIPファイル)
  INPI.g3m, INP.g3m, IN.g3m, INTEST.g3m を含む


プログラム - INPI Ver 2.1G: プログラム名 INPI

プログラムファイル INPI.g1m (fx-9860GII用)のダウンロード [2015/02/28 追加]
プログラムファイル INPI.g3m (fx-CG20 / fx-CG50用)のダウンロード [2016/04/17 追記]
fx-9860GIIへの転送方法の簡単な説明

INPI Ver2.1G for fx-9860GII 

注1) 下から9行目の Locate X+C+I-1,Y, " " の " " は、スペース1個
注2) 下から6行目の Locate 6,4, "           " の " " は、スペース11個
注3) 下から4行目の Locate 15,4,"  " の " " は、スペース2個


プログラム - INP Ver 2.1G: プログラム名 INP

プログラムファイル INP.g1m (fx-9860GII用)のダウンロード [2015/02/28 追加]
プログラムファイル INP.g3m (fx-CG20 / fx-CG50用)のダウンロード [2016/04/17 追記]

 INP Ver2.1G for fx-9860GII 

注1) 下から9行目の Locate X+C+I-1,Y," "  の " " はスペース1個
注2) 下から6行目の Locate 6,4,"      " の " " はスペース11個
注3) 下から4行目の Locate 15,4,"  " の " " はスペース2個


プログラム - IN Ver 2.1G: プログラム名 IN

プログラムファイル IN.g1m (fx-9860GII用)のダウンロード [2015/02/28 追加]
プログラムファイル IN.g3m (fx-CG20 / fx-CG50用)のダウンロード [2016/04/17 追記]

IN Ver2.1G for fx-9860GII 

注1) 下から10行目の Locate X+C+I-1,Y," "  の " " はスペース1個
注2) 下から6行目の Locate 6,4,"      " の " " はスペース11個
注3) 下から4行目の Locate 15,4,"  " の " " はスペース2個



応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 




keywords: fx-9860GIICasioBasic、プログラムライブラリ入力ボックスプログラム関数電卓

リンク集 | ブログ内マップ


関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

Casio Basic入門59

Casio Basic入門
<目次>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

 追記 2017/11/05


 4. CasioBasicを使ってみる(続き)

Chapter 10 - 中級

◆ Chapter 10 の目標: 3桁区切り出力 - 汎用サブルーチンの作成

前回: Casio Basic入門58 を見る


これまでに完成させた fx-5800P版 3桁区切りサブルーチンのソースを再掲します。

fx-5800P版 "高速3桁区切り出力・汎用サブルーチン":3DS
Z=0⇒Return

Int(log(Z))+1→K
(K≥4)+(K≥7)+(K≥10)→I

X→D:X→W
X=0⇒17-K-I←X
If X+K+I>17 Or K≥13
Then
X+K≥17⇒17-K→D
If K≥11:Then
2→D:X<2⇒X→D
W=0⇒2→D
IfEnd
Locate D,Y,Z
Return:IfEnd

X103Frac(Z÷X103)→U
Int(X103Frac(Z÷X106))→V
Int(X103Frac(Z÷X109))→W
Int(Z÷X109)→D

If K≤8:Then
Locate X,Y,X108W+X104V+U
I≥1⇒Locate X+K-2-(I=1),Y,","
I≥2⇒Locate X+K-6,Y,","
Else
X+K-6+(I≥3)→J
Locate J,Y,X107+X104V+U
Locate X,Y,X104D+W
Locate J+4,Y,","
Locate J,Y,","
I≥3⇒Locate X+K-9,Y,","
IfEnd


今回は、グラフ関数電卓への移植を試みます。

なお、fx-CG20 / CG50 と fx-9860GII は同じプログラムで完全に動作しますが、プログラム編集画面での表現が少し異なります。fx-CG20 / CG50 では [X10x] キーを押すと X10x と表記されます。これは fx-5800P も同じです。一方 fx-9860GII では同じキーが [EXP] と印刷されていて、プログラム編集画面では E と表現されます。

先ずは、fx-CG20 / CG50 での表現でプログラムを記述します。

Chapter 10-5
3桁区切りサブルーチン グラフ関数電卓版

グラフ関数電卓版 3DS の仕様
  1. 15桁対応:fx-5800P版のプログラムは、そのまま100%互換でグラフ関数電卓で動作します。しかし、1行が21桁あり fx-5800P の12桁対応では物足りなく感じる。そこで、15桁対応に拡張します。
  2. 変数を増やさない3DS で用いる変数は fx-5800P版と同じとする。メインルーチンで使う変数の制限をこれ以上厳しくしないことを優先的に考え、グラフ関数電卓版で使う変数を追加しない。

グラフ関数電卓版 3DS
具体的に変更した部分です。

前半の変更は、主に1行の桁数が16桁から21桁に変わるので、それに対応したもの。なお3桁区切りは12桁対応から15桁対応へ変えたことに伴う部分が一カ所ある。

後半の変更は、15桁対応への拡張に伴うもの。特に新たな変数を追加しないので一見煩雑に燃えるが、12桁対応と同じロジックを拡張しただけ。

fx-5800P版のソースが分かれば難しくないと思うので、詳細はソースをみてください。


◆ fx-CG20 / CG50版
先ずは fx-CG20 / CG50版 を示します。fx-5800P版と異なる部分を赤文字で示します。

fx-CG20 / CG50版 "高速3桁区切り出力・汎用サブルーチン":3DS
Z=0⇒Return

Int(log(Z))+1→K
(K≥4)+(K≥7)+(K≥10)+(I≥13)→I

X→D:X→W
X=0⇒22-K-I→X
If X+K+I>22 Or K≥16
Then X+K≥2222-K→D
If K≥11:Then
7→D:X<2⇒X→D:W=0⇒7→D
IfEnd
Locate D,Y,Z
Return:IfEnd

X103Frac(Z÷X103)→U
Int(X103Frac(Z÷X106))→V
Int(X103Frac(Z÷X109))→W
Int(Z÷X109)→D

If K≤8:Then
Locate X,Y,X108W+X104V+U
I≥1⇒Locate X+K-2-(I=1),Y,","
I≥2⇒Locate X+K-6,Y,","
Else
X+K-6+(I≥3)+(I≥4)→J
Locate J,Y,X107+X104V+U
Locate X+(I≥4),Y,
X107Int (D÷X103)+X107Fac (D÷X103)+W
I≥4⇒Locate X,Y,Int (D÷
X103)
Locate J+4,Y,","
Locate J,Y,","
I≥3⇒Locate X+K-9+(I≥4),Y,","
I≥4⇒Locate X+K-12,Y,","
IfEnd


ダウンロード高速3桁区切り出力・汎用サブルーチン - 3DS (fx-CG20 / CG50版)
 ※ デバッグ・使いこなしテスト用プログラムもダウンロードできます。   


速度に最も影響を与える Locate コマンドの使用回数は、
  • 8桁以下の場合 (K≤8):3回 (fx-5800Pと同じ)
  • 9桁の場合 (K=9 かつ I=2):5回 (fx-5800Pと同じ)
  • 10~12桁の場合 (10≤K≤12 かつ I=3):6回 (fx-5800Pと同じ)
  • 13~15桁の場合 (13≤K≤15 かつ I=4):8回
となる。12桁までは回数は同じで、拡張した13~15桁の場合のみ2回増えることになる。

次に速度への影響を考えるべき論理演算の回数は、
  • 8桁以下の場合 (K≤8):3回 (fx-5800Pと同じ)
  • 9~15桁の場合 (9≤K≤15):7回 (fx-5800Pは2回)
なので、9~15桁では論理演算5回増え、fx-5800P ならば約 50m秒程度遅くなる計算。

しかし、グラフ関数電卓は fx-5800P より処理が圧倒的に速いので、この程度では fx-5800P よりも速く感じる

3DS src for fx-CG50 


fx-9860GII版
fx-9860GII 版も CG版と全く同じだが、X10x の編集画面上の表現が異なるだけだ。

fx-9860Gシリーズ版 "高速3桁区切り出力・汎用サブルーチン":3DS
Z=0⇒Return

Int(log(Z))+1→K
(K≥4)+(K≥7)+(K≥10)+(I≥13)→I

X→D:X→W
X=0⇒22-K-I→X
If X+K+I>22 Or K≥16
Then
X+K≥2222-K→D
If K≥11:Then
7→D:X<2⇒X→D
W=0⇒7→D
IfEnd
Locate D,Y,Z
Return:IfEnd

E3Frac(Z÷E3)→U
Int(E3Frac(Z÷E6))→V
Int(E3Frac(Z÷E9))→W
Int(Z÷E9)→D

If K≤8:Then
Locate X,Y,E8W+E4V+U
I≥1⇒Locate X+K-2-(I=1),Y,","
I≥2⇒Locate X+K-6,Y,","
Else
X+K-6+(I≥3)+(I≥4)→J
Locate J,Y,E7+E4V+U
Locate X+(I≥4),Y,
E7Int (D÷E3)+E7Fac (D÷E3)+W
I≥4⇒Locate X,Y,Int (D÷
E3)
Locate J+4,Y,","
Locate J,Y,","
I≥3⇒Locate X+K-9+(I≥4),Y,","
I≥4⇒Locate X+K-12,Y,","
IfEnd


ダウンロード高速3桁区切り出力・汎用サブルーチン - 3DS (fx-9860Gシリーズ版)
 ※ デバッグ・使いこなしテスト用プログラムもダウンロードできます。


3DS src for fx-9860GII 



つづく...

⇒ Casio Basic入門60 / Casio Basic入門G01 / 目次



応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 



keywords: fx-5800PCasioBasic、入力ボックス, プログラミング入門プログラム関数電卓

リンク集 | ブログ内マップ


関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

最新記事
検索フォーム
最新コメント
カテゴリ
C# (3)
Visitors
Online Counter
現在の閲覧者数:
プロフィール

やす (Krtyski)

Author:やす (Krtyski)
since Oct 30, 2013


プログラム電卓は、プログラムを作って、使ってナンボ!

実際に触って気づいたこと、自作プログラム、電卓プログラミングについて書いています。

なお管理人はカシオ計算機の関係者ではなく、Casio Basicが面白いと感じる1ユーザーです。


写真: 「4駆で泥んこ遊び@オックスフォード郊外」

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

ブロとも申請フォーム

この人とブロともになる

QRコード
QR