カナデKanade

1. 名札に値を入れる(変数)

値を名札に入れておいて、あとで取り出して使う方法を学びましょう。

この章で学ぶこと

  • 値を名札(変数)に入れて取り出す
  • 入っている値を変える
  • 文字の間に値をはめ込む(枠)
  • 値の種類(数字、文字列、論理、空っぽ)とタイプの付け方
  • 変えられない値を作る(固定しよう)

名札とは?

プログラムには、計算の結果やユーザーの名前のように覚えておきたい値がたくさんあります。値を覚えておくには名札を付けておけばいいんです。名札を付けておいた値のことを、プログラミングでは変数と呼びます。

名札は二重かぎかっこで書きます。『名前』、『点数』のようにです。値を名札に入れるときはにしようを使います。

『名前』を「カナデ」にしよう
『名前』を出力しよう
  • 1行目: 『名前』という名札に、文字「カナデ」を入れます。
  • 2行目: 『名前』に入っている値を出力します。画面にはカナデが出ます。

数字も同じように入れられます。数字はかっこなしで書きます。

『年齢』を20にしよう
『年齢』を出力しよう

入っている値を変える

同じ名札にもう一度にしようを書くと、新しい値に変わります。 前の値は消えます。

『天気』を「晴れ」にしよう
『天気』を出力しよう
『天気』を「雨」にしよう
『天気』を出力しよう

晴れが先に、雨があとに出ます。プログラムは上から下へ流れるので、出力するその瞬間に入っている値が出てきます。

数字は足そう、引こうで増やしたり減らしたりできます。(計算は3章でもっと詳しく学びます。)

『点数』を10にしよう
『点数』に5を足そう
『点数』を出力しよう

15が出ます。


文字の間に値をはめ込む: 枠

「こんにちは、カナデさん!」のように、文字の途中に名札の値を入れたいことはよくあります。かぎかっこの前に枠を付けて、入れたい名札を波かっこ{ }で囲めばいいんです。

『名前』を「カナデ」にしよう
『年齢』を20にしよう
枠「こんにちは、{『名前』}さん!今年で{『年齢』}歳ですね。」を出力しよう

こんにちは、カナデさん!今年で20歳ですね。が出ます。{ }の中には計算式も入れられます。枠「来年は{『年齢』 + 1}歳です。」のようにです。


名札の名前の付け方

  • ひらがな、カタカナ、漢字、英字、数字、アンダースコア(_)が使えます。『点数』、『score』、『点数2』、『最高_点数』
  • スペースは使えません。 『私の 点数』ではなく『私の点数』や『私の_点数』と書いてください。
  • 何が入っているか分かる名前がいいです。『あ』より『点数』のほうが、あとで読みやすくなります。

値の種類

値には種類があります。最初に知っておきたい種類は4つです。

種類 例 説明
数字 20、3.14、-5 計算できる数
文字列 「カナデ」、「こんにちは」 かぎかっこで囲んだ文字
論理 真、偽 正しい/正しくない(条件文で使います)
空っぽ 空っぽ まだ何の値もない

空っぽは「あとで入れます」という意味で使うと便利です。

『優勝者』を空っぽにしよう
『優勝者』を出力しよう
『優勝者』を「カナデ」にしよう
『優勝者』を出力しよう

リストや辞書のように値をいくつもまとめる種類は7章で学びます。


タイプを付ける(選んでOK)

名札を作るときに、どの種類だけを入れるかを決めておけます。値の前に【種類】のを付ければいいんです。この種類をタイプといいます。

『名前』を【文字列】の「カナデ」にしよう
『年齢』を【数字】の20にしよう
枠「{『名前』}、{『年齢』}歳」を出力しよう

タイプは付けなくてもかまいません。付けると、違う種類の値がうっかり入るのを防いでくれます。 下は数字だけを入れると決めた『年齢』に文字を入れようとしたので、エラーになります。

『年齢』を【数字】の20にしよう
『年齢』を「二十歳」にしよう

「『年齢』には『数字』型の値しか入れられません。」 というエラーが出ます。大きなプログラムを作るほど、タイプを付けておくと間違いを早く見つけられます。

タイプ 入れられる値
【数字】 数字
【文字列】 文字
【論理】 真、偽
【何でも】 何でも(タイプを付けないのと同じです)

空っぽは、どのタイプの名札にも入れられます。


変えられない値: 固定しよう

円周率のように絶対に変わってはいけない値は、にしようの代わりにに固定しようで作ります。このような値を定数といいます。

『円周率』を3.14に固定しよう
枠「円周率は{『円周率』}です。」を出力しよう

固定した値を変えようとするとエラーになります。大事な値がうっかり変わるのを防いでくれるんです。

『円周率』を3.14に固定しよう
『円周率』を3にしよう

「定数 ‘円周率’ の値は変更できません。」 というエラーが出ます。


よくある間違い

1. 「」と『』を取り違える

『名前』を「カナデ」にしよう
「名前」を出力しよう
『名前』を出力しよう

「名前」は名前という文字なので名前が出て、『名前』は名札に入っている値なのでカナデが出ます。

2. 作る前に使う

名札はにしようで作ったあとでしか使えません。下は『点数』を作る前に出力しようとしたので、エラーになります。

『点数』を出力しよう
『点数』を100にしよう

「変数『点数』が見つかりません。」 が出たら、その名札を先に作ったか、名前に書き間違いがないかを確かめてください。

3. 枠を付け忘れる

『名前』を「カナデ」にしよう
「やあ、{『名前』}!」を出力しよう
枠「やあ、{『名前』}!」を出力しよう

枠がないと、波かっこがそのままやあ、{『名前』}!のように出てしまいます。値をはめ込むには、かぎかっこの前に必ず枠を付けてください。


まとめ

やりたいこと 書き方
名札に値を入れる 『点数』を10にしよう
入っている値を変える 『点数』を20にしよう(もう一度入れる)
数字を増やす・減らす 『点数』に5を足そう、『点数』から5を引こう
文字の間に値を入れる 枠「点数は{『点数』}点」
タイプを付ける 『点数』を【数字】の10にしよう
まだ値がない 空っぽ
変えられないようにする 『円周率』を3.14に固定しよう

練習問題

1. 『果物』に好きな果物の名前を、『個数』に数字を入れて、枠を使って「りんごを3個買いました。」のように出力してみましょう。

(参考) ここに書いてみましょう。
答えの例
『果物』を「りんご」にしよう
『個数』を3にしよう
枠「{『果物』}を{『個数』}個買いました。」を出力しよう

2. 下のコードを実行する前に、最後に何が出力されるか予想してみましょう。

『お金』を1000にしよう
『お金』から300を引こう
『お金』に500を足そう
『お金』を出力しよう
答えを見る

1200が出ます。1000から300を引いて700になり、そこに500を足して1200になります。

3. 下のコードはエラーになります。なぜなのか考えて、エラーにならないように直してみましょう。

『最高点』を【数字】の100に固定しよう
『最高点』を120にしよう
『最高点』を出力しよう
答えを見る

『最高点』を固定しようで作ったので変えられません。変わる必要がある値なら、にしようで作ればいいんです。

『最高点』を【数字】の100にしよう
『最高点』を120にしよう
『最高点』を出力しよう

次の章では、ユーザーに値を入力してもらい、文字と数字をおたがいに変える方法を学びます。

プレイグラウンド
結果
コードを書いて「実行」ボタンを押してください。