可読性の低い雛形

いつも月曜日の授業では主講師の方に対して言いたいことが山ほどあるんですが、今日の授業でK講師が教えてたコード、じーっと見るまでマヂで読めなかった…
問題としてはただ単に年齢を入力して、0未満または200を超えたなら「うそ!?」、3~99歳以外の年齢なら「まさか!?」って表示するだけなんですぐぁ。
K講師が雛形として

#define _CRT_SECURE_NO_DEPRECATE 1
#include <stdio.h>
#include <math.h>
main(void){
	int a;
	printf("年齢を入力してください : ");scanf();
	if((   ) || (   ))
	printf();
	else
}

なんて書いちゃうもんだからみんな混乱をきたして下のように書いちゃうわけですよ。

#define _CRT_SECURE_NO_DEPRECATE 1
#include <stdio.h>
#include <math.h>
main(void){
	int a;
	printf("年齢を入力してください : ");scanf("%d", &a);
	if((a<0)||(a>200))
	printf("うそ!?\n");
	else if((a<3)||(a>99))
	printf("まさか!?\n");
	else	printf("%d歳ですね。\n",a);
}

こんな単純なのになんという可読性の低さっ!
括弧が無駄に多いってば…
で、コンパイルが通ればいい方なんですが、()抜けとかでコンパイルが通らないとか多々発生するわけですよ。
しかも生徒側がちゃんと理解していないのに先に進めてしまう人なので、入力するものを間違ってたりするわけですよ。
たとえば、||をll(エル二つ)で書いたりとかさぁ…orz
ワープロとかならわかりますが、エディタの場合はモノによっては注視しなきゃいけないわけで。
しかも40人近くいるのに一人一人構ってられん…
そのくせ、そのK講師に見てもらってる子らは先生の一言

ん~わからないなぁ…なんでだろうなぁ……よし、こういうときは全部書き直す!

でやる気がなくなってしまうという…
なんでK講師よりもアシスタントの私のほうが教えて回ったり間違いを正したりすることになるのかさっぱりわからない…(契約上では教える立場にありません、私。あくまで補助です。)
大体終了時間になっているのに、「書き直す」とか言われたらさすがに生徒も萎えますって…
しかもなんでmath.hをインクルードしているのかが理解できん…
どう考えても(つーか考えなくても)math.h使わないだろ、このプログラム…(ちなみに一行目はVisual C++ 2005のclコンパイラのscanf()に対する警告抑制です。)
人それぞれなので書き方をとやかく言いたくはないんですが、せめて生徒側にもスタッフ側にも理解しやすくするために可読性の高い雛形を与えたほうがいいのでは?と言いたい、小一時間ほど。
ちなみに上の2つ目のコードはまだ読めます。
これより酷いのありました…orz
おかげで目が異様に痛くなったし。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中