2020年3月23日
小学生がScratch(スクラッチ)で学ぶべきプログラミング「3つの基本」
ユーバープログラミングスクール代表 中村 里香
小学校でのプログラミング教育必修化が目前に迫りました。目覚ましいスピードで進化する、コンピュータにより支えられる社会を生きるために、論理的に思考して課題を解決する「プログラミング的思考力」が全ての人に求められていることが背景にあります。
子どもがプログラミング的思考力を学ぶツールとして注目の「Scratch(スクラッチ)」ですが、具体的に何をどんな風に学び始めたら良いのかと迷われる方も多いと思います。今回はプログラムの基本「順次」「反復」「条件分岐」についてやさしい例をあげながら紹介します。一緒にScratchを起動し実行しながらみていただけたらと思います。
■Scratchの入手方法
・Webサイトを利用する。ScratchのWebサイト
・Scratchをダウンロードする。Scratchアプリのダウンロード
順次
プログラミングとは、コンピュータにやってほしいことをコンピュータの理解できる言語で「順番」に記述することです。記述した命令は、基本的に上から順番に実行されます。このようにひとつひとつ順番に実行されることを「順次処理」と言います。
身の回りのことで例をあげると、ごはんを炊く場合、米を計る→米を研ぐ→水を測って入れる→吸水→火をつける→火加減調節→消火→蒸らす、など多くのやるべきことがあります。順番を間違えたらどうなるでしょうか?上手にごはんを炊くことができなくなりますし、場合によっては大変なことになってしまうかもしれません。プログラムでも同様にやってほしいことを整理して抜けや漏れがなく順番を意識して命令することが大切なのです。
Scratchでは、命令のブロックをハットブロック(イベントパレットの「緑の旗が押された時」など)につなげてプログラムを作ります。ステージの上の「緑の旗」がクリックされると「緑の旗が押された時」につながっているブロックは、上から順番に実行されます。
具体的にねこのキャラクターに「①『スタート!』と(吹き出しでセリフを)いう」「②画面の中のどこかに行く」「③終わるまでニャーと鳴く」というプログラムを作ってみます。
始めに①「スタート!」とセリフを言ってから、②どこかに移動、③ニャーの音が再生されます。
これを、「①終わるまでニャーと鳴く」「②『スタート!』と(吹き出しでセリフを)いう」「③画面の中のどこかに行く」と入れ替えて実行してみれば、子どもにも違いが明確に伝わります。
実際に試しながら自分の意図した通りに何かを動かすためには、順番を考えてプログラムを作る必要があるということを少しずつ理解していけると良いでしょう。
目的があると練習も楽しくなると思いますので、スタート地点から矢印に沿ってドーナツのところまで移動する簡単な例題を用意してみました。「スタートちてんにいく」からスタートして「↑うえにあるく」と「→みぎにあるく」という移動の順番を考えて組み立ててみてください。
ユーバープログラミングスクールのサイトから、この例題のプロジェクトファイルをダウンロードできます。
【注意:ファイルの開き方】ダウンロードしたプロジェクトファイルは、Scratchのサイトまたは、ローカルエディタで「ファイル」メニュー「コンピュータからよみこむ」で開いてご利用ください。ダブルクリックでは起動できません。
反復
順次で紹介した練習問題もそうですが、同じことや規則性のあることを繰り返し実行したいということがよくあります。もしも「↑うえにあるく」と「→みぎにあるく」の移動が100段分あったならプログラムがとても長くなりそうでうんざりしませんか?作るのも修正するのも大変ですから、人間の手作業では疲れてうっかりしてしまいそうです。
しかし、プログラムには同じことを何回も繰り返し書く必要はありません。繰り返し実行してくれる便利な機能があります。これを「反復処理」と言います。Scratchでは、「ずっと繰り返す」「○回繰り返す」「◇まで繰り返す」のブロックがあたります。
先ほどの移動の練習問題でいうと「↑うえにあるく」と「→みぎにあるく」という同じ処理を5回も繰り返しています。回数を指定し繰り返すブロックを用いれば、「5回繰り返す」の中に「↑うえにあるく」と「→みぎにあるく」それぞれ1つずつをはさめば良くなるのでプログラムが短くなります。これなら作るのも楽ですし、万が一繰り返す回数や、繰り返す中身が変わった場合の修正も容易になります。
コンピュータは繰り返し計算することが得意なので、処理の反復部分を発見してどんどん活用してください。次は、繰り返しに条件分岐を合わせてさらに効率よく処理する例を見ていきます。
条件分岐
条件を設定してその答えが「はい」か「いいえ」か、で次の実行を分岐する命令を「条件分岐」と言います。反復と条件分岐による処理は、プログラミングの基本です。
日常生活の例を見てみましょう。放課後に「児童館へ遊びに行こう。」と誘われました。「お稽古の日か?」という条件を調べます。「はい」なら「お稽古に行きます」、「いいえ」なら遊びに行けそうですが、続けて「宿題は終わっているか?」という条件を調べます。そして「はい」なら「遊びに行きます」、「いいえ」なら「先に宿題を済ませます」。
さらに「お腹は空いているか?」→「はい」なら「おやつを持っていきます」、「いいえ」なら・・・といった具合に条件分岐が日々の暮らしの中においても連続しています。コンピュータにやってほしいことがあったら、適切な条件を設定できるかが非常に重要です。
Scratchでは、「もし◇なら」「もし◇なら、でなければ」「◇まで繰り返す」「◇まで待つ」のブロックがこれにあたります。
先ほどの練習問題を条件分岐で改造してみましょう。ねこが移動する画面(矢印が書いてあるところ)ですが、上に移動する部分は水色で、右に移動する部分は黄色か茶色になっています。この色を条件に利用して動きを分岐し処理を自動化したいと思います。
「ねこが水色に触れたか?」という条件を調べて「はい」なら上にあるきます。同じように「ねこが黄色に触れたか?」という条件に合えば右にあるきますし、「ねこが茶色に触れたか?」という条件に合えば右にあるきます。この処理を繰り返します。繰り返すのは、ゴールするまで、つまりドーナツに触れるまでです。「◇まで繰り返す」のブロックは条件の答えが「いいえ」の間はずっとはさんだブロックを繰り返しますから、条件としては「ドーナツに触れた」が入ります。
実行すると、ねこはスタート地点で水色に触れるのでまず上にあるきます。すると今度は黄色に触れますから右に・・・と繰り返します。ドーナツに触れたかどうか、が「はい」になると反復処理をおえて、次の処理「終わるまでBiteの音を鳴らす」が実行されて終了します。
この3つの色の条件を「ねこが水色に触れたか?」という条件で2つに分けることもできます。「はい」なら上へあるき、「いいえ」なら右に歩きます。他にも「◇または◇」(どちらかの条件が合っている:論理和)のブロックも使えます。
条件分岐のブロック自体は、使い方がわかると比較的理解しやすいと思います。ただ自分のやりたいことを上手に分岐できる条件を考えるのは、小さな子どもには少し難しいので練習が必要です。
身の回りのことで考えよう
朝起きてから夜寝るまでの毎日の生活、料理のレシピ、遊びやゲームなどなんでも良いので子どもと一緒に「順次」、「反復」、「条件分岐」を使って手順を考えてみることをお勧めします。やることの順番をあげてみる、反復している部分がないか考える、そしてどのような条件で分岐したらよいのかをシンプルな流れで考えてみてください。ぜひScratchを使って楽しみながらアイデアを制作してみてください。
<著者プロフィール>
ユーバープログラミングスクール代表
ユーバー株式会社 代表取締役 中村里香
子どもも保護者も続けやすい、楽しく手軽なプログラミング教育実現のため、2017年4月ユーバー株式会社を設立。環境に左右されず全ての子どもに広く等しく楽しい教育を届けることを信念に、子ども向けプログラミング教室の運営、教材ライセンスの販売、通信教育向けプログラミング教材開発、プログラミング講師育成を手がける。
著書「遊びながら楽しく学ぶ!小学生のScratchプログラミング(ナツメ社)」
関連URL
関連記事
最新ニュース
- 漢検協会とベネッセ、初コラボ 進研ゼミ会員の小・中学生が選ぶ「今年の漢字」(2024年12月13日)
- AI型ドリル搭載教材「ラインズeライブラリアドバンス」が「高知家まなびばこ」とデータ連携開始(2024年12月13日)
- コドモン、広島県三原市の保育所等13施設にICTサービス「CoDMON」導入(2024年12月13日)
- 陸前高田市、返済不要の給付型奨学金事業の資金調達で1600万円の目標金額達成(2024年12月13日)
- ライフイズテック、中高生向け「ライフイズテック スプリングキャンプ2025」春休み開催(2024年12月13日)
- サイバー大学、「Times Higher Education Online Learning Rankings 2024」でブロンズ評価を獲得(2024年12月13日)
- プログラミングスクール受講生で最も多い年代は20代、平均年齢は33.8歳=「 CloudInt」調べ=(2024年12月13日)
- 不登校・行き渋りの子どもがいる親1000名へのアンケート調査 =サイボウズ ソーシャルデザインラボ調べ=(2024年12月13日)
- 大阪大学、デジタル学生証・教職員証の提供を2025年1月にスタート(2024年12月13日)
- 「デジタルハリウッドSTUDIO」STUDIO渋谷、AIクリエイティブデザイン講座を開講(2024年12月13日)