プログラムにおけるマジックナンバー(英: magic number、魔法の数字)とは、何らかの識別子もしくは定数として用いられる、プログラムのソースコード中に書かれた具体的な数値である。そのプログラムを書いた時点では製作者は数値の意図を把握しているが、他のプログラマーまたは製作者本人がマジックナンバーの意図を忘れたときに閲覧すると「この数字の意味はわからないが、とにかくプログラムは正しく動く。まるで魔法の数字だ」という皮肉を含む。 次のような理由で、マジックナンバーはプログラム中に含まれないことが好ましいとされる。 その数値の持つ意味がわかりづらい。 数値を変更する場合に、複数の箇所を変更しなければならない可能性がある。 例1 たとえば、消費税が8%の時に、税込価格 (tax-included price) を求める以下のようなソースコードをC言語で書いたとする。