【問題1】
 プログラムのソースコードにおいて「マジックナンバー」と呼ばれるものはどれですか(1つ選択)。

 【選択肢】 正解
A) 1文字の名前が付けられた変数
B) 何を表しているかわからない即値
C) 1つの変数が複数の用途に使用されたもの
D) プログラムが正常終了したことを示す値

 正解は選択肢Bです。

 例えば,変数priceに金額が格納されていて,その消費税(5%)を計算して変数taxに代入するとしましょう。tax = price * 0.05; というソースコードを記述した場合,0.05という即値がマジックナンバーと呼ばれます。プログラムを書いた本人は,0.05が消費税だとわかりますが,他の人が見ると何を意味しているかわからないかもしれません。

 「意味不明な数値なのにプログラムが動作するのだから,これは魔法の数値に間違いない」という皮肉を込めてマジックナンバー(magic number)と呼ぶのです。マジックナンバーをなくすには,0.05という即値にTAX_RATESのような名前を付け,tax = price * TAX_RATES; と記述します。