2016年6月11日土曜日

「ぼくのかんがえた、さいきょうの高機能電卓」(途中から漢字になってスマソ)と言うか、こんな高機能電卓があったら面白かろうと思うのヨ


CASIO fx-5800Pは、名機の誉れ高い高機能電卓です。

  • 単4電池で充分に長く動作します
  • 高機能電卓として十分な広さの画面
  • 使いやすいCASIO BASIC言語
など、など

プロ電が少なくなってしまった今日に至るも永らく販売されておりますが、一方、惜しい点もあります。

  • ヒンジが弱い
  • プログラムを外部に保存しにくい
プログラムを保存するには、同じfx-5800Pとケーブルで接続し、内容をコピーするしかなく、そのため、PCなどでプログラムを作成してfx-5800Pに流し込むなどの操作が出来ないのが惜しい所。

また、カバーのヒンジが弱く、ちょっとした力の入れ具合で折れてしまうのも残念ポイントとなってしまった。

元々、ヒンジでカバーを付けたのは、ちょっとした文書を書き留めた「手帳」の様なデザインだったのではないか。
公式集なりを持っていて、いつでも利用できるというイメージだった。
しかし、凝った作りである一方、壊れやすい事から、今日では「改善を望む点」になってしまった。

fx-5800Pが登場した当時、これらの問題点は余り問題にはならなかった点でしょうが、永く販売を続けている内に、今日的には明確な欠点として浮かび上がって来ております。

ヒンジの問題は、ケースを改善するだけで解決するでしょう。
すると、もうひとつの問題点「プログラムの保存と復帰に、別のfx-5800Pが必要」という点を、改善して欲しいと思うのです。

今日、PCは安価となり、USBポートで様々な機器と接続するのが当たり前になっております。
高機能電卓とPCを接続して、PCで編集したソースコードを高機能電卓に流しこむ、となると、プログラムのバックアップも容易になります。

ここまでは「eGadget」の やす親分様も強く提唱されております。
ここからはオリジナル、当方の思いを。

今日の高機能電卓には、数値Solverが当たり前になりつつあります。いや、当方としては「Solvreこそが高機能電卓にゼヒとも欲しいモノ」と言いたい。

この数値Solverを、BASIC言語から簡単に呼び出せる様にしてもらいたい。すると、今までファームウェア内に収蔵されていた「公式集」は、Solvreアプリケーションとして実装する事が出来る様になるはずです。
こうする事で、公式集の追加、改変もユーザーが行える様になります。更に、不要なものは一時的にPCなどにバックアップを取り、電卓内の空き容量を稼ぐ事も出来るでしょう。

Solvreだけで色々なアプリケーションを書けるわけではありませんから、プログラミング言語は「必須」であります。
更に、BASIC言語に「スタック」のメカがあると、面白いものになりましょうや。
Solver機能とのデータのやり取りにスタックを用いるのです。
BASICで記述したアプリケーションから、スタックを介してSolvreに値を設定して実行。簡単にSolvreアプリケーションが構成できるという次第です。
また、スタックのメカがあると、サブルーチンを再帰的に呼び出すなんて事も出来ます (ただ、そのためにはスタックを十分 - 1000段程度は欲しい)。
ちなみに「C:BASIC」では局所変数のメカを導入しようと検討されているそうで、 面白い事になっております。

そんでもって、Solvreを使うにあたって、電卓I/Fを活かすメニューAPIもあるとウレシイ。
HP42Sのエミュレータである「Free42」を使うと解りますが、HP42Sには変数をメニュー風に入力するために使う「MVAR」という命令があり、プログラム中で使う事で、簡易なメニューシステムを構成できます。
もちろん、プログラムでメニューシステムを構成する事は悪い事ではないのですが、プログラム領域の容量を喰ってしまい、勿体ない。

Solvre,メニューシステムから、高機能電卓を考えてみました。
この先、新しい高機能電卓にどんなものが出るのか、色々と夢想するのですが、果たしてメーカー様は、応えてくれるのでしょうか ?


4 件のコメント:

やす (Krtyski) さんのコメント...

akatuki様

面白い話題なのに、コメントが遅れてしまい、申し訳ありません。

Solver機能をプログラムから呼び出すというのは、面白い考え方ですね。私自身はこれまで考えたことがありませんでした。私も支持します!

ところで、fx-5800Pには Formula 機能があって、式を登録しておきそれを呼び出して計算するものです。
既にご存じかと思いますが、プログラムモードに入ると、Fmla (Formula)を選び、自分オリジナルの式を登録することが出来ます。私自身は、光学計算に関していくつかの 式を登録して使っています。

但し、おっしゃる通り、Casio Basicプログラミングで、式を呼び出すことができません。まあ、Formulaモードでメニューから式を呼び出せるので、それを使ってちょ、ということかも知れません。

但し、登録した式を使って Solver機能を使うことは出来ないのです。もし Formula機能で登録している式を使って Solverが使えれば、結構便利ではあります。





akatuki さんのコメント...

やす (Krtyski) 様、御無沙汰しております。

> Solver機能をプログラムから呼び出すというのは、面白い考え方ですね。私自身はこれまで考えたことがありませんでした。私も支持します!

そうなんですヨ !
多機能が連携して動作する事で、より機能が向上していくのだと思うのです。

> ところで、fx-5800Pには Formula 機能があって、式を登録しておきそれを呼び出して計算するものです。
> 既にご存じかと思いますが、プログラムモードに入ると、Fmla (Formula)を選び、自分オリジナルの式を登録することが出来ます。私自身は、光学計算に関していくつかの 式を登録して使っています。

Formula機能=数式計算機能を拡張して、どの変数でも値を求める事が出来る(数値解ですが)のがSolvreでしたから、
まさにFormula機能をより進めて欲しい所です。

> Casio Basicプログラミングで、式を呼び出すことができません。まあ、Formulaモードでメニューから式を呼び出せるので、それを使ってちょ、ということかも知れません。
> 但し、登録した式を使って Solver機能を使うことは出来ないのです。もし Formula機能で登録している式を使って Solverが使えれば、結構便利ではあります。

この辺りが有機的に連携する事で、機能拡充となる事を期待したい所です。

御賛同戴き、多謝 !


AkSd さんのコメント...

やすさん、akatukiさん、こんばんは。

>但し、登録した式を使って Solver機能を使うことは出来ないのです。もし Formula機能で登録している式を使って Solverが使えれば、結構便利ではあります。

自作公式(Formula)機能で登録した式を呼び出して、Solver機能を使うことができました。
自作公式を登録する際、変数はA~Z(a~z)、更にギリシャ文字や添え字等が使えます。そして、FMLAキーで呼び出して実行したあと、SOLVEキーを押すとSolverモードになるのですが、使用変数の種類によってはSyntaxErrorとなりました。

どうやらカルク(CALC)機能およびソルブ(SOLVE)機能で使える「変数メモリーA~Z」だけで式を構成すればOKのようです。
「Formula呼出し」からのCalculate機能<->Solver機能を実行することができ、とても使いやすいです。キーボード右上に「FMLA」「CALC」「SOLVE」と並んでいるのには意味があったんだなぁ、と感心しました。

akatuki さんのコメント...

AkSd 様、お知らせ多謝です !
先日来、些事に忙殺されており、もう暫くこんな調子ですが、御容赦戴き度候。

お知らせの件、やす親分は、プログラム中でのSolvre機能利用について述べられた、のだと思うのです。

どうなんでしょうか ? 当方、未だにfx-5800Pを使っていないものですから ... 。