2020年からの小学校でのプログラミング教育必修化に伴って、プログラミングへの関心が高まっています。
そして、教育用のプログラミング言語として人気があるのが、スクラッチ(Scratch)で、色々なゲームや作品を作ることができます。
でも、ゲーム作りだけでなく、プログラミングの基本や考え方も学んでみたいというお子さんや、学ばせたいという親御さんもいらっしゃるのではないでしょうか?
そこで、学びプラスでは「スクラッチで学ぶプログラミング」シリーズを公開中です!
今回は、スクラッチを使って、ランダムの数(乱数)の作り方と考え方を理解していきたいと思います。このランダムな数は、ゲームで運要素などを入れたいときなど様々なところでつかわれるので、ぜひ理解していきましょう!
【スクラッチ】ランダムな数(乱数)とは?
さいころを振って1から6までの数を出して遊んだことがあるのではないでしょうか?
その時に、1から6のどの数字がでるかわかりません。
また、1回目振って、2回目振って、3回目振ったときのさいころの目は、全部同じかもしれないし、違うかもしれません。
このように、どんな数字がでるか予想ができない状態のことを「ランダム」と言います。
そしてその数字のことを、ランダムな数(乱数)と言います。
どんな数字が出るか分からないので、運などのゲーム性を入れたいときによく使われます。
なお、例えば1の目しかないさいころがあったとしたら、1がでるのは決まっているので、そういうのはランダムとはなりません。
スクラッチでランダムな数(乱数)を使ってみよう
では、早速ランダムな数(乱数)を使っていきたいと思います。
「演算」の中から、1から10までの乱数 ブロックを選択してきます。
ブロックをクリックすると1~10までの間の数字がランダムに表示されます。
このブロックを使って簡単なゲームを作ると、以下のようなことができます。
プログラムの中身はこうなっています。
この例では、1~10の乱数を作り、5より大きい数が出た場合は「こんにちは!」、5以下の数は「うーん…」とネコが言います。
乱数なので、実行するまではネコが何というかは分からず、ゲーム性が出てきます。
もう一つゲーム例を挙げていきます。
プログラムの中身は以下です。
実行させると、コウモリがランダムな場所に現れるようになります。
なお、ランダムな場所は、「動き」の中の、どこかの場所へ行く ブロックでも可能です。
ただ、このブロックを使ったときは、スプライトが画面端に表示されて、見切れてしまうかもしれないため、上記のプログラムのように、乱数の発生する数( -150 ~ 150、115 ~ -115など)の範囲を決めて、移動できる座標をしぼってあげた方が良いです。
※座標の考え方は、以下で解説中
まとめ:ランダムな数(乱数)はゲームを面白くする
ランダムな数(乱数)を使うことで、ゲームを実行してみないとどうなるか分からないドキドキ感やゲーム性を出すことができます。
そのため、レースゲームやシューティングゲームなど、いろいろなゲームでも乱数が用いられ、ゲームを面白くしています。
ゲームを面白くしてみたい、ランダムに敵を発生させたいなどと思いついたら、乱数を使うことができるか考えてみると良いでしょう!