はじめてのRmakeスクリプト
第01回 変数と数値をマスターしよう
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
こんにちは 簸川 葵(ひかわ あおい)と申します
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8697/C02_02_01.png)
こんにちは 剣 芽優(つるぎ めゆ)です
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
この連載ではスクリプトの基礎を、じっくりとお話していきます
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8700/C02_02_02.png)
先生! まったくの初めてですが、大丈夫ですか?
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8691/C01_02_04.png)
先生、というほどのものではないですが・・・
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8694/C01_02_05.png)
最後には問題集もありますので、自分のペースで理解していけますよ
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8703/C02_02_03.png)
テスト付き、ということかぁ・・・
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
採点などはありませんよ 理解できたかどうかのチェックシートです
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
気楽に臨んで頂けたら幸いです
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8697/C02_02_01.png)
分かりました がんばりまーす!
01-01 変数と数値
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
今回は、『変数』についてお話します
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8715/C02_02_07.png)
『変数』って何ですか?
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8694/C01_02_05.png)
例えて言うなら、中身が変わる「箱」のようなものです
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
この「箱」には名前をつけて使用します
#「x」という名前の変数に、数値「5」を入れる
x = 5
#「y」という名前の変数に、変数「x」の中身を入れる
y = x
「=」を使って、右から左に入れるのかぁ 思っていたよりシンプル・・・
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
そうですね ちなみに、
スクリプトは上から順に実行されていきます
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
そのため、このスクリプトでは、まず変数「x」に「5」が入り、
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
変数「y」に変数「x」の中身である「5」が入ります
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8715/C02_02_07.png)
「5」を渡しちゃった、変数「x」の中身はどうなるの?
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
次に新しい値が入るまでは残り続けます
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
変数「x」変数「y」ともに「5」が入った状態になるわけです
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8706/C02_02_04.png)
渡すというより、コピーになるのね
01-02 変数と関数
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
変数の中身を確認するためには
speak関数を使用します
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8715/C02_02_07.png)
『関数』・・・?
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
『関数』とは、ある決まった動作をするまとまりのことです
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
実際にスクリプトを見てみましょう
#「x」という名前の変数に、数値「5」を入れる
x = 5
#変数「x」の中身を表示する
speak(x)
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8715/C02_02_07.png)
"speak"という名前と、その後ろに()があるのね
"speak"が関数の名前 ()の中には関数に渡したいものを書きます
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
今回のspeak関数は「渡されたものを表示する」という動作のまとまりなので
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
これで変数「x」の中身が表示されるわけです
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8706/C02_02_04.png)
『関数』って便利なのね
01-03 変数と計算
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
変数には計算した結果を入れることもできます
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8715/C02_02_07.png)
足し算とか、割り算とか?
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
そのとおり 他に、
変数を含んだ計算もできますよ
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8712/C02_02_06.png)
変数も使えるの?
#「x」という名前の変数に、数値「5 + 3」の結果を入れる
x = 5 + 3
#「x」という名前の変数を、変数「x」わる数値「2」の結果で上書きする
x = x / 2
#変数「x」の中身を表示する
speak(x)
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8703/C02_02_03.png)
えーっと・・・ まずは「x」に「8」が入って、それから・・・
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
「x」には「8」が入っているので「8 / 2」 つまり「4」が「x」に上書きされます
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8715/C02_02_07.png)
なるほど 引き算や、掛け算は?
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
引き算は「-」、掛け算は「*」を使います
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
他にも「%」で割り算の余りを求めることができます
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8712/C02_02_06.png)
余りまで計算できちゃうのね
01-04 第01回 まとめ問題集
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
それでは、今回のまとめ問題です
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8700/C02_02_02.png)
よーっし がんばるよ
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
なお、回答は記載しておりません
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8682/C01_02_01.png)
スクリプトをコピーして、実際に動作させることでチェックしてください
問題01
次のスクリプトに実行結果が「5」と表示されるよう、1行を追加してください
問題02
次のスクリプトに実行結果が「10」と表示されるよう、1行を追加してください
問題03
次のスクリプトに実行結果が「2」と表示されるよう、1行を追加してください
x = 10
x = x % 2
#ここに追加する
speak(x)
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8706/C02_02_04.png)
できた! このぐらいなら、楽勝だよ
![](https://d2nlrppnj7be8d.cloudfront.net/materials/0012/8688/C01_02_03.png)
なお、理解したかどうかの確認なので、
コメントに回答を書かないでください
<連載一覧>
第01回 変数と数値をマスターしよう
第02回 変数と文字列をマスターしよう
第03回 変数とフラグをマスターしよう
第04回 配列変数をマスターしよう
第05回 通常変数をマスターしよう
第06回 数値の応用をマスターしよう
第07回 時間の動作をマスターしよう
第08回 ユーザ定義関数をマスターしよう
第09回 スクリプト用語のまとめ
この記事についてご質問等がありましたら
こちらのブログ記事のコメントへご投稿、
よろしくお願いいたします。