円はカクカクの進化系?Spheroで挑む「円の描き方」プログラミング!

サイエンストレーナーの桑子研です。毎日が実験。

「丸」という形、実はとても不思議だと思いませんか?完璧な曲線を描くその姿は、一見すると直線の集まりとは無縁に思えます。しかし、プログラミングの世界では、この「円」を攻略する面白い考え方があるんです。

スフィロ(amazon)を使ったロボットプログラミング!前回は正方形、正三角形、正六角形の描き方について見てきました。変数を使えば、ほぼ同じプログラムで「外角」の数値を入れ替えるだけで、いろいろな図形が描けることがわかりましたね。

多角形の究極の姿、それが「円」?

正六角形の場合は外角が60°

今回は、いよいよ円を描くプログラムに挑戦してみたいと思います。
「直線しか動けないロボットに、どうやって曲線を教えればいいの?」と難しく感じるかもしれません。

ここで数学的なアイデアの出番です。
実は、円というのは「角の数がものすごく多い正多角形」だと考えることができるのです。

正六角形、正十二角形、正百角形……と角を増やしていくと、どんどん円に近づいていきますよね。つまり、細かく角度調整を繰り返しながら進めば、スフィロは円を描けるはずです!さっそく、次のようなプログラムを組んでみました。これでうまくいくでしょうか?

あれ?円にならない……?失敗から学ぶデバッグの楽しさ

動画を見てみると、どうやらきれいな円にはなっていません。
「予想が間違っていたのかな?」と不安になるかもしれませんが、実はこれ、プログラムの論理自体は正解なのです。

では、なぜ失敗したように見えるのでしょうか?
その理由は、「円の半径が大きすぎて、画面(走行スペース)に収まりきっていないだけ」なのです。一歩一歩の進む距離が長すぎて、巨大な円を描こうとして壁にぶつかったり、迷子になったりしていたわけですね。

「時間」と「スピード」を操って円を小さくする

大きな円を小さくするには、スフィロが1回に進む距離を短くしてあげる必要があります。
そこで、ロールブロックのスピードや時間を調整してみましょう。

例えば、これまで1秒間進んでいたところを0.3秒に変更してみます。すると、0.3秒ごとに細かく角度を変えて進むようになり、ギュッと引き締まった小さな円を描くことができるはずです。

さっそく動かしてみましょう!

遊びながら身につく「数学的思考」

ご覧ください!とてもきれいな円を描くことができましたね。
スフィロのプログラミングを通して、変数ループ、そして「多角形と円の関係」といった算数・数学の概念を、自然と肌で感じることができます。

教科書で数式を眺めるよりも、実際にロボットを動かして「あ、時間が長すぎたんだ!」と試行錯誤するほうが、ずっと深く記憶に残ります。遊びながら実践的に学べる。これこそが、プログラミング教育を早い段階から取り入れる最大のメリットと言えるでしょう。

お問い合わせ・ご依頼について

科学の不思議やおもしろさをもっと身近に!自宅でできる楽しい科学実験や、そのコツをわかりやすくまとめています。いろいろ検索してみてください!
・科学のネタ帳の内容が本になりました。詳しくはこちら
・運営者の桑子研についてはこちら
・各種ご依頼(執筆・講演・実験教室・TV監修・出演など)はこちら
・記事の更新情報はXで配信中

科学のネタチャンネルでは実験動画を配信中!

3月のイチオシ実験!

  • 押し花を作ろう!:梅や桜の花の押し花を作ってみましょう。特別なケースに入れると、長く保存できて、しおりにもなります。

テレビ番組・科学監修等のお知らせ

書籍のお知らせ

講師・ショー・その他お知らせ

Explore

  • 楽しい実験…お子さんと一緒に夢中になれるイチオシの科学実験を多数紹介しています。また、高校物理の理解を深めるための動画教材も用意しました。
  • 理科の教材… 理科教師をバックアップ!授業の質を高め、準備を効率化するための選りすぐりの教材を紹介しています。
  • Youtube…科学実験等の動画を配信しています。
  • 科学ラジオ …科学トピックをほぼ毎日配信中!AI技術を駆使して作成した「耳で楽しむ科学」をお届けします。
  • 講演 …全国各地で実験講習会・サイエンスショー等を行っています。
  • About …「科学のネタ帳」のコンセプトや、運営者である桑子研のプロフィール・想いをまとめています。
  • お問い合わせ …実験教室のご依頼、執筆・講演の相談、科学監修等はこちらのフォームからお寄せください。