第91話 講義と、出来ない人と、綺麗さっぱり

「C言語に限らずプログラム言語はどれも同じで、初期設定、終了判定、処理、終了判定までループ、後処理で成り立っている」


 俺はエクレアに講義を始めた。


「ええと、その手順があるのは分かるけど『extern void water(void); void main(void){ water(); }』にはそれがないわよ」

「省略は出来るんだ。この場合は初期設定、終了判定、終了判定までループ、後処理は省略されている。そこが自由度があって厄介なところだ」

「分からないわ」

「説明は難しいな。さっきの手順はプログラムを考える時のガイドみたいな物だ。1から10までの合計を求めるプログラムを考えてみようか」

「ええと、初期設定からよね」

「ああ」

「何を初期設定すれば良いの」

「この場合は合計だな。カウンターの初期化もやっておく必要があればする」

「初期設定に複数の項目があるの。聞いてないわ。カウンターって何?」

「カウンターは数を数えるのに使う。この場合1から10だな」


「もう嫌。プログラムの読み方と意味さえ分かれば、魔法は発動するんでしょう」

「まあ、そうだが、それだとカスタマイズできない」

「出来なくてもいいわよ。あなた、やってくれるでしょう」

「仕方ないな」


 エクレアはプログラムが組めない人間のようだ。

 子供にそれが遺伝しない事を祈るしかないな。


 さっきの1から10の合計は、簡単なんだがな。


 まずは初期設定。

 合計をゼロに。

 カウンターを1に。


 次は、終了判定。

 カウンターは11か?


 そして、処理。

 合計にカウンターを足し込む。

 カウンターを1増やす。


 ループして。


 後処理は合計の表示。


 まあこんな具合だ。

 高度な知識というのはさほど必要としない。

 とにかく、処理工程をバラバラにできるかに掛かっている。

 処理工程をバラバラにしたら後は組み立てるだけだ。


「ねえ、あなた。食器洗い器のアプリを作ってくださる」


 前に作ったから、問題はない。

 すぐに作った。


「ありがと。もう一度、C言語に挑戦してみようかしら。よく考えたら子供に教えないといけないのよね。抜かれることは確実だとしても最初から負けているわけにはいかないわ。食器洗いのプログラムを見せて」

「はいよ」


char dirt[10]; /*汚れ十立方センチ*/

extern int tax_collection(int money);

extern MAGIC *magic_make(char *target_obj,int target_size,int image);

extern void magic_delete(MAGIC *mp);

extern void mclose(MAGIC *mp);

void main(void)

{

 MAGIC *mp; /*魔法定義*/

 if(tax_collection(5)==1){ /*税金徴収、銅貨5枚 金が無ければ、何も起こらない*/

  mp=magic_make(dirt,sizeof(dirt),IMAGEUNDEFINED); /*汚れを魔法として登録*/

  magic_delete(mp); /*汚れを消去*/

  mclose(mp); /*魔法を終わる*/

 }

}


 プログラムを見せてやった。


「駄目、クラクラするわ。訳の分からな外国語の文章を見せられた気分。いいえ意味は分かるのよ。コメントに書いてあるから」

「じゃあ何が駄目なんだ」

「食器洗いは食器洗いよね。その一言をなんで理路整然と細かくしないといけないのよ」

「魔法の仕様がそうなっているからだな。細かく説明すると効率が良くなる」

「理不尽ね」


「でも救済措置はあるだろ。【食器洗い】でも魔法は起動するんだから」

「そうね」


 エクレアは不満そうだ。

 英語を覚えるのは苦じゃなくてプログラムは駄目か。

 文法だと思えば似たような物だ。


 だけど、俺は英語の方が苦手だ。

 個人差があるのは仕方ない。


 エクレアはスペルブックに魔法を追加した。

 その魔法はこんなだ。


void main(void)

{

 dirt_delete(); /*汚れを消去*/

}


 ずいぶんと端折ったな。

 こんな魔法でも通ってしまうが、効率という観点からからするとちょっと。


「何?」

「別にいいんだけど」

「けど何?」


「『extern void dirt_delete(void);』ぐらいは付けようよ。それと魔力消費量も」

「そうやっていくと、ごちゃごちゃするでしょ。すっきり綺麗さっぱりが好きなの」

「魔法は別に人すきずきだから文句は言わないよ」


 エクレアに負けた気分だ。

 別にいいんだけど。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る