にしのクエスト2

情報処理技術者試験と資格学校講師の日常

f:id:koharuwest:20191106221322p:plain

Unityで学ぶプログラミング 夏休みC#の基礎(5)変数の利点とルール

さてさて、前回の続きですよ。

なぜに、変数が必要か

この「空き箱」に例えられる変数がなぜに必要
か、プログラムを書くことで証明してみましょ
う。

全体としては、こんな感じになります。
    void Start()
    {
        //箱を作る
        int a;
        int b;
        int c;

        //箱に数値を入れて
        a = 5;
        b = 3;
        c = 0;

        //足し算
        c = a + b;
        Debug.Log(c);

        //引き算
        c = a - b;
        Debug.Log(c);

        //元の数字は
        Debug.Log("元の数字は"+a+"と"+b+"と"+c);
    }

どうでしょうか?

cの役割である計算結果は変化しますが、
aとbの変数の中身は変化しません。

このようにある一定の「状態」や「値」を保
持するのに、空き箱(変数)の存在は大変有
効です。

変数にはルールがありまーす

それでは、次のプログラムを。
aがfloatという小数を入れる箱になってます。
その中に、5.5f(fは小数だよ!という意味)
という値を入れています。

 

//箱を作って

float a;
int b;
float c;


//それぞれの箱に数字を入れます
a=5.5f;
b=3;

//足し算をして

c=a+b;

//表示させます。
Debug.Log(c);


あれれ?うまく行きません。

計算結果が保存されるのがcですね。bは整数型
intですから、計算相手が小数floatの場合は計算
ができないのです。


実は、変数では違う種類の中身を計算したりす
るに工夫が必要になります。

なので、

・なるべく同じ形の箱同士で計算するか。
※これが一番いいです。
例)

float a;
float b;
float c;

a=5.5f;
b=3.0f;

・箱の種類を変換するか 
※キャストっていいます。難しいです。
  同じfloatにしちゃえば問題ないって考え方です。

例)

c=(float)(a+b);

それでは、この続きは次回に!