173 マジックカリキュレーター①
電卓って電子卓上計算機の略称なので魔法名としてはふさわしくない。『マジックカリキュレーター』という魔法名にしようかな。直訳すると魔法計算機だね。
いつものようにフレームワークとなる魔法陣を描いてから、計算機構を実装していく。
と言っても、起動後に二つのパラメータを入力し、メニューから演算種別(足し算・引き算・掛け算・割り算)を選択するだけだ。結果は脳内に表示する。
実際の計算処理は『AとBを足せ』とか『AからBを引け』という感じの命令を記述するだけなので、全く問題なく実装できた。
整数演算(小数点無し)にするのか、実数演算(小数点以下までを対象とする)にするのかは選択できるようにしようかな?5÷2が2になるのが整数演算、2.5になるのが実数演算だ。
二つの入力パラメータ(数値)のうち、どちらか一方または両方が実数(小数点付きの数値)であるならば自動的に実数演算になるようにしよう。
二つの数値が整数(小数点無しの数値)でかつ割り算のときだけは、結果を整数にするのか実数にするのかをメニュー選択できるようにすれば良いね。
入出力機構以外(処理の中核部分)は超簡単なので、そこまでの開発期間はかからなかった。約一週間かな。プロトタイプは二日くらいで完成したけど、動作テストやらバグ取りに時間を取られたんだよね。まぁ、いつものことだ。
アルファ版は飛ばしてベータ版をお兄様にお披露目してみよう。私としてはもうRC(リリース候補)版と言っても良い感じだけどね。
ベータ版の完成後、私はお兄様とお義姉さまの執務室である工房新社屋4階のCEO室を訪れた。
「お兄様、お義姉さま、ちょっとこの魔法陣を見ていただけませんか?」
「ほう、新しい魔法陣とは珍しいね。僕に見せるということは魔道具用ではないんだね?」
「はい、単なる魔法陣の魔法なので、魔道具とは無関係の私の趣味の領域です。でも事務作業には便利だと思いますよ」
「ふふ、もったいぶってるね。分かった。機能は聞かずに実行してみよう。危険な攻撃魔法ではないんだよね?」
「もちろんです。起動後に数値を二つ入力し、メニューから機能を選択してください」
お兄様が魔法陣を記憶するのに30分。ペリーヌお義姉さまが淹れてくれたお茶を飲みながらおとなしく待っていると、突然お兄様がうめき声を上げた。
ギョッとするお義姉さま。体調が悪くなったのかと思うよね。全く紛らわしい。
「マリア、これはすごいな。桁数の多い四則演算が一瞬で行われたよ。掛け算や割り算の結果が本当に正しいのかどうかは、検算していないので分からないけどね」
「正しいですよ。私がさんざんテストして検証しましたから」
そう、大変だったよ。いちいち紙に書いて検算したからね。この検証作業に時間を取られたと言っても過言ではない。
なにしろどこでオーバーフロー(桁あふれによる誤動作)するのか分からないから、20桁とか30桁の計算もテストしてみたんだよね。もしもオーバーフローした場合、エラーにはならず計算結果が間違って表示されてしまうので、手作業による検算が必要なんだよ。
…で、結局、桁数の限界は不明だった。さすがに100桁の計算とかやりたくないし…。
お兄様がお義姉さまに言った。
「ペリーヌ、君もぜひこの魔法陣を覚えるべきだよ。いつも計算には苦労してるよね。この魔法陣を覚えればその苦労から解放されるよ」
「あなた、つまりこれは計算してくれる魔法なんですのね?マリア、あなたなんてものを作ってくれたの」
ペリーヌお義姉さまが私に抱きついてきた。いわゆるハグだね。そんなに計算で苦労してたの?
「喜んでもらえて私も嬉しいよ。あ、お兄様、これって一応まだベータ版なので何か改良点があればおっしゃってくださいね」
「ああ、分かった。ペリーヌと二人で使いながら改良点をピックアップしていこう」
これでテスト要員ゲットだぜ。
完成したらアレンやルーシーちゃん、ロザリーちゃんやブレンダにも教えてあげなくちゃね。