アレアレ

お役立ち情報、お悩み解決情報を発信!

実践編

プログラミングの変数になぜ「型」があるのかがわかる具体例

このサイトの プログラミング教育 のコーナーでは、これからプログラミングを学び始める子供を持つ親御さんに向けて、プログラミングについてわかりやすく解説しています。全くプログラミング経験のない方は、基礎編の記事から、基礎編を読んだ方は実践編の記事をご覧ください。

プログラミングの変数になぜ「型」があるのかがわかる具体例

前回の、プログラミングの基礎知識「変数」が理解できるたとえ話では、プログラミングの基礎知識となる「変数」について、「契約書を結ぶときの甲と乙のようなものだ」という例をもとに解説しました。

今回ご紹介したいのは、その変数には「型」と呼ばれる種類があるよ、というお話です。

変数には型がある

プログラミングの基礎知識となる変数を学ぶにあたり、まず知っておきたいのは、変数には「型」と呼ばれる種類があることです。

例えば、その「型」には、次のような種類があります。

数値型: 1, 2, 3などの整数、3.14, 2.236などの実数
文字列型: こんにちは
日付型: 2018年6月18日
論理型: true(真)、false(偽)

厳密に言うと、このような変数の型には、利用するプログラミング言語によって、その種類の型があったり、なかったりします。例えば、C言語には、文字列型、日付型、論理型のような型はありません。

また数値型も、C言語の場合、整数、実数などで区別する(しなければならない)言語もあれば、JavaScriptのように区別をつけずに数値として扱う言語もあります。

厳密に言うと難しくなるので、ここでは取り敢えず「変数には型の違いで種類がある」と言う点を理解してください。

変数を数値型と文字列型で扱う違いの例

では、より理解を深めるために、プログラミング言語のJavaScriptを利用して、変数の型の違いが理解できる例を示します。

まず、次のソースコードが、その違いを理解するためプログラムのソースコードです。何も考えずに、実行ボタンを押してこのプログラムを動かしてみてください。(実際には、ボタンを押さなくても実行結果が出力されています)

このプログラムを実行すると、その出力として次の結果が得られます。

1+1=2
1+1=11

この結果ですが、1行目の「1+1=2」は当たり前として、2行目の「1+1=11」は、おかしなことになっていることがわかりますよね。

これは、その変数を定義するときの型の違いによって、このような違いが生じています。

型の違いで足し算か、連結かが変わる

では、なぜそのような違いが生じるのかを解説します。

まず、このプログラムでは、「var number1 = 1;」の行で数値型の変数を、「var string1 = “1”;」の行で、文字列型の変数を定義しています。

そして、同じ数値型同士の変数の足し算をしているのが、「(number1 + number1)」の箇所です。ここでは、数値型同士の変数を「+」で足しているので、これはそのまま足し算となり、その結果は、「2」となります。

一方で、「(string1 + string1)」の箇所では、文字列型同士の変数を「+」としています。この場合は、その変数の中に格納されている”1″と言う文字列の値を連結すると言うことになります。つまり、”1″と”1″を連結して、”11″という結果になるというわけです。

このように、変数を「+」する場合でも、その変数の型によって結果が変わるわけですね。なので、プログラムで変数を利用するにあたり、その型を意識することが、とても重要になります。

次に読む記事:変数をまとめて定義する「配列」の便利さが理解できる具体例

Return Top