どんなにおもしろいゲームでも、画面に表示してくれないと遊ぶことはできません。

はじめに、画面に文字を表示する方法を学びましょう。

今、 HP が 153 とします。これを表示する方法を説明します。

画面中のグレーのエリア    はプログラムを書く場所です。

プログラムを書く場所

黒いエリア    はプログラムを実行した結果を表示する場所です。

実行結果を表示する場所

画面に文字を表示するには print という命令を使います。

print は英語で「印刷する」という意味です。

日本語でも印刷することをプリントする、印刷機をプリンターと言いますね。

print は紙ではなく画面に「印刷する」、つまり表示するための命令なのです。

では、プログラムを書くグレーのエリアに print と書いてみます。

print

これだけでは何を print したいのかわかりません。

今、表示したいのは HP である 153 でした。

print したいものは、 print の後に () を付けて書きます。

print(153)

これでプログラムは完成です。これを実行してみましょう。

153

結果を表示する黒いエリアに 153 と表示されましたね。

print() の中を変更すると表示される文字も変わります。

たとえば、 5 のダメージを受けて HP が 148 になったとします。

() の中を 148 に変えて実行してみましょう。

print(148)
148

今度は 148 と表示されました。

今は、 HP が 153 の状態から 5 のダメージを受けた後の HP 148 を自分で計算しました。

しかし、計算はコンピューターの得意技です。

せっかくコンピューターを使っているのだから、計算はコンピューターにやってもらいましょう。

print() の中を 148 から 153 - 5 に書きかえて実行してみましょう。

print(153 - 5)
148

() の中を 148 ではなく 153 - 5 と書いても 148 と表示されました。

print() の中には数字だけじゃなくて計算式も書けるのです。

ひき算と同じように、たし算やかけ算、わり算をすることもできます。

- でひき算ができたように、 + でたし算ができます。

print()
print(6 + 3)
9

かけ算には、 × の代わりに * を使います。

print(6 * 3)
18

わり算には、 ÷ の代わりに / を使います。

print(6 / 3)
2

コンピューターは計算が得意なので、難しいかけ算でも一瞬で計算することができます。

print()
print(12345 * 9876)
121919220

すごいですね!

また、電卓と違って二つの数だけでなく、三つの数を計算することもできます。

print()
print(1 + 2 + 3)
6

たし算とかけ算を混ぜたらどうなるでしょうか?

print(1 + 2 * 3)
7

算数や数学と同じように 2 * 3 が先に計算されました。

もし 1 + 2 が先に計算されていたら、 1 + 2 = 3 、 3 * 3 = 9 で答えは 9 になるはずです。

では、 1 + 2 * 31 + 2 を先に計算するにはどうすればいいでしょうか?

算数や数学では先に計算したい部分に ( ) を付けます。プログラミングでも同じです。

1 + 2() を付けて (1 + 2) * 3 にしてみます。

print((1 + 2) * 3)
9

今度は 1 + 2 が先に計算されて計算結果が 9 になりました。

かっこの中にかっこが入る場合はどう書けば良いでしょうか。

数学では、 ( ) を重ねるときに中カッコ { } や大カッコ [ ] を使います。

しかし、プログラミングではカッコを重ねるときは、内側のカッコも外側のカッコもすべて () で書きます。

print(((1 + 2) * 3 + 4))
print(((1 + 2) * 3 + 4) * 5)
65

また、かけ算ばかり見てきましたが、わり算ももちろん同じように、たし算やひき算より先に計算されます。

print(((1 + 2) * 3 + 4))
print(((1 + 2))
print()
print(7 - 6 / 3)
5

これを使って勇者が魔王を攻撃したときのダメージを計算してみましょう。

勇者の攻撃力が 162 、魔王の防御力が 58 だとしましょう。

次に、ダメージの計算方法を考えなければなりません。

単純に攻撃力から防御力を引いただけではおもしろくありません。

攻撃力から防御力を引いて、それを 2 で割った値をダメージとしましょう。

このダメージの計算をプログラムで書いてみます。

print()
print((162 - 58))
print((162 - 58) / 2)
52

「ゆうしゃのこうげき。まおうに 52 のダメージ!」というわけです。

先に 162 - 58 を計算しないといけないので、 162 - 58() が付いていることに注意して下さい。

魔王の HP が 999 だったとすると、ダメージを受けた後の HP も簡単に計算できます。

print((162 - 58))
print()
print(999 - 52)
947

もしくは、ダメージを計算して HP から引くところまで一度に計算することもできます。

print(999 - )
print(999 - (162 - 58))
print(999 - (162 - 58) / 2)
947

さて、攻撃力や防御力を変えて少し遊んでみましょう。

一度、ダメージを計算するさっきのプログラムに戻します。

print((162 - 58) / 2)
52

試しに、勇者の攻撃力をめちゃくちゃ高くしてみましょう。

攻撃力が 1500 だったら次のようになります。

print((1500 - 58) / 2)
721

「ゆうしゃのこうげき。まおうに 721 のダメージ!」

魔王の HP はいくら残っているでしょうか。

print((1500 - 58))
print()
print(999 - 721)
278

なんと、一撃で魔王 HP がほとんどなくなってしまいました。

ただの計算をしているだけですが、 RPG の戦闘だと思うと楽しいですね!

このように、何かを計算するプログラムは、式を書くだけで簡単に作ることができます。

これまで、プログラミングを学び始めて 10 分ほどしか経ってないと思います。

しかし、電卓よりもはるかに強力な計算手段を手にすることができました。

算数や数学の式のように、 ( ) を含む計算も思いのままです。

そして、難しくて複雑な式でも、コンピューターが一瞬で答えを計算してくれます。

その計算を使って RPG の戦闘を表現することもできました。

ほんの 10 分で学んだにしては、すごすぎると思いませんか?

もちろん、プログラミングの力はこんなものではありません。

これから、さらなる強力なプログラミングの手法を学んでいきましょう。