【プログラミング】変数とは?
変数とは?
例えば、「誕生日占い」のアプリを作るとします。
ユーザが誕生日を入力して、それに従って処理を行って占いの結果を表示するのですが…
ユーザが何を入力するかなんて、当然アプリの設計段階で分かるはずがありません。
〇月〇日と入力された場合はAの処理、△月△日と入力された場合はBの処理…
といったコードを記述していきます。
しかし、この処理を実現させるためには、必ずユーザが入力する値が必要になります。
ここで、ユーザが入力する値を格納する箱のようなものを準備しておきます。
この箱のことを、変数といいます。
変数に値を格納することを、代入するといいます。
変数はどこに保存される?
変数のための箱を準備して…
その箱をもう一度使うときのために、どこかに保存しておく必要があります。
どこに保存されるのでしょうか。
実は、コンピュータの主記憶装置のメモリ空間に保存されます。
主記憶のメモリ空間に保存しておいて、プログラムの中で再度必要になったら呼び出します。
変数を使ったプログラムの例
では、実際に変数を使ったプログラムの例を紹介します。
今回は、Excelで使われるVisual Basicという言語で書いてみます。
セルA1の数値とセルA2の数値を足してセルA3に表示するというプログラムを作ってみます。
Sub sample()
'変数を用意
Dim a As Long
Dim b As Long
Dim c As Long
'A1の数値とA2の数値を変数に格納
a = Range("A1").Value
b = Range("A2").Value
'aとbを足す
c = a + b
'A3に値を書き込む
Range("A3").Value = c
End Sub
変数を使わなくても、このくらいのレベルならコードは書けてしまいます…(笑)
しかし、変数を使うことで見やすくスッキリしたコードを書くことができます。
プログラミングでは見やすさも重要視されますので、それだけでも変数を使う価値はあります。
例題
2つの変数xとyに対して、次の手続きを(1)から(4)の順に実行する。処理が終了したときのxの値はいくらになるか。
(1)xに2を代入し、yに3を代入する。
(2)yの値から1を引いたものをyに代入する。
(3)xの値とyの値を加えたものをxに代入する。
(4)y≠1なら手続き(2)に戻り、y=1なら処理を終了する。
ア 4
イ 5
ウ 7
エ 8
(1)終了時点:x=2、y=3
(2)終了時点:x=2、y=2
(3)終了時点:x=4、y=2
(4)y≠1なので、(2)に戻ります。
(2)終了時点(2回目):x=4、y=1
(3)終了時点(2回目):x=5、y=1
(4)2回目:y=1なので、処理を終了します。このとき、x=5ですから、イが正解です。
ちなみに、この問題の手続き部分をVisual Basicで書くと、以下のようになります。
Sub sample2()
'変数を用意
Dim x As Long
Dim y As Long
'(1)
x = 2
y = 3
'(4)
Do While y <> 1
'(2)
y = y - 1
'(3)
x = x + y
Loop
Debug.Print x
End Sub
最後の「Debug.Print」の部分は、イミディエイトウィンドウという部分にxの値を表示させるだけなので、無くてもプログラムは成立します。
ただ、書いていないと、正しくプログラムが動いているかの動作確認ができません…(笑)
まとめ
- プログラムの中で、値を保存しておく箱のことを、変数と呼ぶ。
- 変数は主記憶装置のメモリ空間上に保存される。
- 変数に値を格納することを、代入するという。
今回の記事の内容は他の記事より少し少なめですが、今回の記事はここまでです。
何か参考になる情報があれば嬉しいです。
ちなみに、このブログでは他にも基本情報技術者試験に関する内容の記事を投稿しています。もし、気になる内容がありましたら、覗いてみてください。
最後までお読みいただき、ありがとうございました。