ソフトを作ってみたい(3/4)〜 変数とは 〜 トップ / ソフト・ゲームを作るには
/ 変数とは
ソフトを作ってみたい(1/4) - プログラミングって? |
変数ここまでは、処理の大まかな流れについて見てきたと言えます。 それに対して、ここからはもう1つの重要な要素である 「変数」について見ていきたいと思います。 変数って何「変数」というと数学で習った「変数」を思い浮かべる人も多いかもしれません。 しかし、数学でいう「変数」とは少し違います。 とりあえず、難しいという思い込みは脇に置いておいてください。 変数というのは、簡単に言えば、「コンピュータの記憶」です。 人間は、物を見たり聞いたりすると記憶することができます。 記憶するということは一見単純なことの様に見えますが、 実際には、見たり聞いたりしたデータを「脳」の中に保存しておかないと、 思い出すことはできませんね。コンピュータでも同じように、 「ハードディスク」という所にデータを保存します。 しかし、コンピュータにとってもっと大切な「記憶」があります。 それは、「たった今のことを覚えている」ということです。 たとえば、今「何か」のことを考えていたとしても、 「記憶」がなければそのついさっき考えていた「何か」が何であるか すら覚えていることができません。 日常感覚には合わないかもしれませんが、コンピュータはそういう「記憶」をもっています。 その「ついさっきのこと」を記憶する仕組みが「変数」です。 |
記憶に名前を付けるコンピュータでは普通、記憶をするためにその「記憶」に名前を付けなければなりません。 これが、「変数の名前」になります。 なぜ名前を付けるかというと、名前を付けないと何の記憶か分からなくなるためです。 人間の場合も「曲を知っているのに曲名が出てこない」と困ることがありますね。 ここで例を挙げてみたいと思います。自分の一番好きな歌の歌詞を記憶したいとします。 ここで「好きな曲の歌詞」という名前を付けてみます。 ここで、「好きな曲の歌詞」は何か?とコンピュータに聞いていみます。 すると、その人の好きな歌の歌詞を知ることができます。 これは、別の言い方をすれば、 「好きな曲の歌詞」という変数からその内容を読み込むということです。 |
データを書き込むさきほど、「好きな曲の歌詞」というのをやりましたが、 もしかすると好きな歌が変わってしまうかもしれません。 そこで、「記憶」を「書き換える」必要があります。 変数の名前を使って、その「記憶」は簡単に書き換えることができます。 好きな曲が変わったときに、その曲の歌詞を書き換えましょう。 実際のプログラムを見てみると、 などとなっています。 この場合「SukinaUta」という名前の変数に「ある日 森の中 熊さん…」という文章を覚えこませることができます。 なお、このように変数に何かを書き込むことを、「変数に代入する」といいます。 よく使う言葉なので、覚えておきましょう。 |
まとめここまでの話をまとめてみます。 変数というのは、コンピュータの記憶のようなもので、名前を付けて読み込んだり代入したりできるものです。 |
実際に使う実際に使うためには、変数の使い方を知らなくてはなりません。 そこで、簡単な特徴の様なものを紹介しておきます。 変数の値の種類このような「変数」をコンピュータが扱うために、 実際には変数に入れる(書き込む)ことのできる値の種類が決まっています。 例えば、数字を入れる変数には「数字」しか入りませんし、 文字列(文章)を入れる変数には「文字列」しか入りません。 言わば入れるものによって容器の形が違うということです。 さらに、コンピュータの記憶は有限なので、数字を入れるにしても、 「0 から 255 までの整数」とか 「-32768 から 32767 までの整数」のように、 入れることのできる数字の範囲が決められていたりします。 変数にはこのような制限があるので、その制限に合わせた使い方をしなければなりません。 変数を組み合わせる実際のプログラミングでは、多くの「変数」を組み合わせて複雑な処理をします。 単純な例ですが、 例えば「今の日時」を知りたい時に「年」・「月」・「日」・「時」・「分」・「秒」の6つの変数があれば、 「今は2123年4月5日6時7分8秒です」のように時刻を表示することができます。 (実際には表示する直前に、それぞれの変数に実際の時刻の値を代入しなければなりません。) さらに、「時」に 60 を掛けて分を足す などの計算をしたりすると、 「今日の朝0時から何分たったか」のようなことも分かります。 また、あることをしたときの時間や日にちを変数として取っておいて、 後から使うことも出来ます。 ・ 次のページへ
トップ / ソフト・ゲームを作るには
/ 変数とは
2006/2/19 更新 |