SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

マンガで分かるプログラミング用語辞典

「変数」
~マンガでプログラミング用語解説

マンガで分かるプログラミング用語辞典(5)

解説

 変数は、プログラムの根幹を成す概念です。プログラムを使えば複雑な計算を行えます。そのための手順を文字で書き、その内容を1つ1つ処理していきます。その際に、計算結果を保持して、後で再利用する必要があります。この、計算結果(値)を保持するための箱が変数になります。

例)割引率を掛けた複数の金額の合計
箱a = 100 * 0.7
箱b = 200 * 0.9
箱c = 箱aの値 + 箱bの値

 プログラムでは、多くの場合、変数に値を代入する処理を「=(イコール)」記号で行います。そのため、プログラミングに慣れていない人は、数学の「=」記号の意味(両辺の値が等しい)と混同して混乱します。

例)数学
a = b
……「a」と「b」は同じ
例)プログラム
a = b
……変数aに、変数bの値を入れる

 プログラムの場合は、式の右側(「=」の右側)の計算結果を、式の左側(「=」の左側)の変数に代入します。

例)
a = 1 + 2 + 3 + b
……変数aに、「1 + 2 + 3 +変数bの値」の計算結果を入れる

 そのため、数学で見られるような、以下のような式は見られません。

例)数学
a + 1 = b

 なぜならば、プログラムでは、式の右の計算結果を式の左の変数に格納するからです。

例)プログラム
a + 1 = b
……これは駄目

 プログラムは、行の左から右に処理していきますが、この変数の代入では、右の計算結果が左に代入されます。ちょっと分かり難いですが、そういったものとして覚えてしまってください。

例)
行の左から右に処理
→→→→→→→→→
a =  1 + 2 + 3 + b
↑  └───┬──┘
└─────┘
変数への値の代入は向きが逆!

サンプル

 変数を、JavaScriptで簡単に書いてみます。

<html>
    <head>
        <title>「コメントアウト」のサンプル</title>
        <script type="text/javascript">
            var a, b, c;

            a = 3;        // 変数aの値は3
            b = 1;        // 変数bの値は1
            b = a;        // 変数bの値は3

            document.writeln("a " + a + "<br>"); // 変数aの値を出力
            document.writeln("b " + b + "<br>"); // 変数bの値を出力

            document.writeln("----------<br>");

            a = 100 * 0.7;
            b = 200 * 0.9;
            c = a + b;

            document.writeln("a " + a + "<br>"); // 変数aの値を出力
            document.writeln("b " + b + "<br>"); // 変数bの値を出力
            document.writeln("c " + c + "<br>"); // 変数cの値を出力
        </script>
    </head>
</html>
出力結果
a 3
b 3
----------
a 70
b 180
c 250
フィードバックお待ちしております!

 ご感想、解説して欲しい用語、解説内容のアドバイスなどございましたら、FacebookTwitterなどでお気軽に編集部までお寄せください。よろしくお願いいたします。

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
マンガで分かるプログラミング用語辞典連載記事一覧

もっと読む

この記事の著者

柳井 政和(ヤナイ マサカズ)

クロノス・クラウン合同会社 代表社員http://crocro.com/オンラインソフトを多数公開。プログラムを書いたり、ゲームを作ったり、記事を執筆したり、マンガを描いたり、小説を書いたりしています。「めもりーくりーなー」でオンラインソフト大賞に入賞。最近は、小説家デビューして小説も書いています(『裏切りのプログラム』他)。面白いことなら何でもOKのさすらいの企画屋です。 

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/6631 2012/07/03 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー