プログラム入門@TSUKANA

Scratchで正多角形を描いてみよう


小学校の算数の授業では正多角形の学習でScratchを用いて図形を描くという授業を行っています。Scratchで図を描くための設定や,正多角形を描くため,どんなプログラムになるかを考えていきましょう。

Scratchのペン機能の設定

ペン機能追加のための説明動画です。

左下のボタンを押し,開いた拡張機能一覧から「ペン」のブロックを選択すると,「コード」の左メニューに「ペン」が追加され,ペン機能のためのブロックが使用できるようになります。

ペンを使ってみよう

下記はペンを使用したサンプルになります。

 プロジェクトの共有ページ
上の4つのボールを押すと,ネコが動きます。 を押すとはじめの状態にもどります。プログラムがどうなっているか,上のリンクから確認してみましょう。
4つのボールには「このスプライトが押されたとき」のイベントで「[歩く1],[歩く2],[右回り],[左回り]のメッセージを送るように設定されています。
ネコに設定されたプログラムは以下です。

ネコのプログラム

 が押されたとき」はネコやペンが初期状態になるようなプログラムとなっています。
「歩く1を受け取ったとき」は「ペンを下ろす」→「10歩動かす」で,ネコが前に進むと線が引かれています。
「歩く2を受け取ったとき」は「ペンを上げる」→「10歩動かす」で,ネコは前に進みますが線は引かれません。
「右回りを受け取ったとき」は「ペンの色を5ずつ変える」→「15度回す」で,ネコが右回りに少し回転します。この後「歩く1」で線を確認すると線の色が変わっています。
「左回りを受け取ったとき」は「ペンの太さを1ずつ変える」→「15度回す」で,ネコが左回りに少し回転します。この後「歩く1」で線を確認すると線の太さが変わっています。
このように「ペンを下ろす」の後にネコが動くと,ペンを下した後のネコの動きどおりに線が引かれることがわかります。そして「ペンを上げる」の状態では線は引かれません。また,色や太さの設定ができます。
これらの機能を使って多角形を描いてみましょう。

正多角形を描いてみよう

上の説明から,ネコを動かしてペンで正多角形を描くプログラムを考えてみましょう。
プログラムとしては,「ペンを下ろす」→「ネコが移動」→「ネコの角度を変える」で,「ネコが移動」→「ネコの角度を変える」を角の数だけ繰り返せば正多角形になるでしょう。
そして,ネコの角度はどれだけ変えるかを考えてみましょう。

正多角形とネコの動き

正多角形の頂点は円周上にあり,円の中心からそれぞれの頂点に線を引くと,同じ二等辺三角形が頂点の数だけ集まってできていることがわかります。
この二等辺三角形の,長さの等しい辺(円の半径と同じ長さ)の間の角度(上図の青丸)は360°を頂点の数で割った値になります。
三角形の角の合計は180°ですので,上図の緑四角の角度は180°から青丸の角度を引き,2で割った数となります。
ここで,上の図のようにネコがある頂点から次の頂点まで進み,回転して向きを変えます。この角度を見ると,180°から緑の四角2つ分を引いた角度になることがわかります。この角度はさきほどの説明からわかるように,360°を正多角形の頂点の数で割った角度,青丸の角度であることがわかります。
これを元に正多角形を描くプログラムを作成しました。


 プロジェクトの共有ページ

ネコに設定されたプログラムは以下になります。

正多角形のネコのプログラム

変数には「頂点の数」と「角度」を設定しています。
 が押されたとき」には,線を消し,ネコの位置と向きを初期状態に戻すようにしています。
「このスプライトが押されたとき」には,線を消し,変数「頂点の数」には正多角形の頂点の数を入れ,変数「角度」には上の説明のように360°を頂点の数で割った値を入れています。
そして「ペンを下ろす」→「(頂点の数)回繰り返す」の中で「100歩動かす」→「(角度)度回す」で正多角形が描かれます。
「100歩動かす」の100が正多角形の辺の長さになります。

タグ:Scratch

総合管理者|2022年7月14日


カテゴリ一覧

問合せ