Up 変数と定数  


    関数の学習者は,「変数」,「定数」の語についている「数」に混乱します。 そこで,「変数」,「定数」は数とは関係ない,ということを最初に注意しておきます。
    ちなみに,「変数」,「定数」は英語では,variable, constant になります。

      同様に,関数の学習者は「関数」の語についている「数」に混乱します。 「関数」も,数とは関係ありません。( 一意対応)


    「変数」,「定数」は,文字ないし文字列 (一般に記号列) の異なる使い方を指すことばです。
    ある記号列をある容器の名前に使うとき,それは「変数」です。
    ある記号列をある名前の別名として使うとき,それは「定数」です。

    例えば,レポートの回収ボックスとして,1, 2, 3, 4学年ごとに4つの箱を用意し,それにラベル「1年生提出用」「2年生提出用」「3年生提出用」「4年生提出用」を貼るとき,「1年生提出用」「2年生提出用」「3年生提出用」「4年生提出用」の文字列はそれぞれ「変数」として使われていることになります。

    また,
      「‥‥この法律で「教育職員」とは、学校教育法 (昭和二十二年法律第二十六号)第一条 に定める小学校、中学校、高等学校、中等教育学校、特別支援学校及び幼稚園(以下学校という。)の教諭、助教諭、養護教諭、養護助教諭、栄養教諭及び講師(以下教員という。)をいう。‥‥」
    で使われている「学校」「教員」は,それぞれ「定数」として使われていることになります。


    「変数」「定数」の違いは,文字列の使い方の違いです。
    つぎのプログラムの例で,このことを重ねて確認してください:



    学校教育では,習慣として,「変数 x, y」が導入されます。 学習者は,「変数」のことばに混乱します。
    「変数」の意味は「変わる数」ではありません。
    (「変わる数」なんてものは,考えようがありません。そんなものはありません!)

    上に述べたように,「x, y」は,(一時)保存容器につけられた名です。
    容器とそれの名は固定されています。「容器の中身が変わる」ということです。
    「変わる」の意味の理解を,論理的にしっかりさせてください。

    「x, y」を使うのは,習慣からです。もちろん別の表現でかまいません。
    実際,コンピュータプログラムは関数の組み合わせとしてつくられますが,この中では,それぞれの関数の意味がわかるように,関数名や変数名を工夫します。

    関数の指導では,誤った固定観念を壊すためにも,「x, y」の早期導入は止めましょう!