スモウルビー-5角形が書けた

スモウルビーでは絵を描くことができます。

拡張機能にペン機能がありますので追加すると自由に絵を描くことができるようになります。

今回は簡単な図形を描いてみることにチャレンジしてみましょう。

正多角形にすることでプログラミングの基本である『繰り返し処理』も学ぶことができます。

それではやってみましょう!

拡張機能でペンを追加してみよう

画面の左下にある『拡張機能を追加する』ボタンをクリックして拡張機能を選択しましょう。

拡張機能を追加する

ボタンをクリックすると拡張できる機能の一覧が表示されますので『ペン』をクリックしましょう。

スクラッチ-ペンを追加

クリックした後に画面の左に翻訳機能が追加されていることがわかります。

スクラッチ-ペンエリア

ペンで線を描いてみよう

ペンを追加できたら早速ペンで線を描いてみましょう。

ペンで線を書くには『pen_down』命令を使います。

pen_downの次にスプライトを動かす命令を追加してみましょう。

self.when(:flag_clicked) do
  pen_down
  move(100)
end

実行してみてしたのように線がひかれていればOKです!

スモウルビー-線が書けている

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

ペンで線が描けるようになったら図形を描いていきましょう!

まずは正方形を描いてみよう

最初に正方形を描いてみましょう。

正方形を書くにはどうしたら良いでしょうか?

正方形の角度は何度かわかりますか?

そうです、90度ですね。

  • 100歩動かす
  • 90度向きを変える
  • 上の2つを4回処理する

この3つができれば正方形を描けそうですね。

プログラムを作ってみましょう。

ちなみに描いた線を消したいときは『全部消す』ブロックをクリックしましょう。

スクラッチ-全部消す

以下のようなプログラムがかけたでしょうか?

self.when(:flag_clicked) do
  pen_down
  move(100)
  turn_right(90)
  move(100)
  turn_right(90)
  move(100)
  turn_right(90)
  move(100)
  turn_right(90)
end

プログラミングがかけたら実行してみましょう!

スモウルビー-正方形を書く

正方形がかけましたね!

正三角形を描いてみよう

まずは正三角形から描いてみましょう。

正三角形を書くにはどうしたら良いでしょうか?

正三角形の角度はいくつになるかわかりますか?

そうですね60度ですね。

  • 100歩動かす
  • 60度向きを変える
  • 上の2つを3回処理する

この3つができれば正三角形ができそうですね。

さっそくプログラムを作ってみましょう!

以下のようなプログラムがかけたでしょうか?

self.when(:flag_clicked) do
  pen_down
  move(100)
  turn_right(60)
  move(100)
  turn_right(60)
  move(100)
  turn_right(60)
end

これで動かしてみましょう!

スモウルビー-おかしな三角形

あれ?全然三角形になっていないですね、なぜでしょうか?

〇〇度回すの値はあくまでスプライトの向いている方向だからです。

自分が真っ直ぐに歩いていると考えるとわかりやすいです。

真っ直ぐに歩いているときに60度の線を書きたいとした場合は60度ではなく180から60を引いた120度が必要ですね。

そうすると内側の角度は60度になりますね。

では全ての角度の値を120に修正して再度実行してみましょう。

スモウルビー-三角形が書けた

三角形を描くことができましたね!

三角形の角度と描くときの角度は違うことに注意が必要ですね。

正五角形はもっと楽にしてみよう

三角形も描くことができたら最後に正五角形を描いてみましょう。

正五角形の内角は108度です。

ただこのままでは使えませんでしたね。

180から108を引いた値を使うようにしましょう。

  • 100歩動かす
  • 72度向きを変える
  • 上の2つを5回処理する

上記のプログラムを作れば正五角形が作れそうですね。

ただこのままやると少し面倒なことがありますね。

『5回処理する』のは3回でも面倒だったのに5回となるともっと面倒なのはわかりきってますね。

こういう時は何を使うと良いでしょうか?

そうですね『繰り返し処理』ですね。

繰り返し処理について詳しく知りたい人はしたの記事をみてください。

今回は繰り返し処理を使ってみましょう。

プログラムはしたのようにできるはずです。

self.when(:flag_clicked) do
  pen_down
  5.times do
    move(100)
    turn_right(72)
  end
end

プログラミングができたら実行してみましょう!

スモウルビー-5角形が書けた

無事に五角形を描くことができましたね。

繰り返しを使えば数が多い多角形も作ることが簡単にできそうですね。

ぜひ試してみてください。

おすすめの記事