本などを見ながら プログラミングを勉強している時、エラーをお手本とのまちがい探しで 修正していませんか?
エラーの原因を見つけて 修正する力は、プログラミングで 不可欠な要素です。
この記事では『エラーで学ぶScratch まちがいを見つけてプログラミング初心者から抜け出そう』という本を紹介します。
この本は、Scratchでよくあるエラーを見つけて修正することで、プログラミング力を高めるための問題集です。
問題を解くことで、以下の力が身につきます。
- エラーを見つける力
- エラーを修正する力
- プログラムを読む力
- 論理的思考力
- 問題解決能力
Scratch経験のある小学校高学年以上の子や、プログラミング初心者の大人の方におすすめの一冊です。
Scratchがはじめての子向けの本は、以下の記事で紹介しています。
エラーを見つけて解決することで思考力を鍛えられる
今回紹介するのは、
という本です。
エラーをわざと入れた プログラムを解読し、なぜエラーが発生したのか、そしてどのように修正すればよいのかを 考えることで、より深くプログラミングを 学ぶことができます。
また、エラーを見つけて 修正方法を考える過程は、プログラミング学習だけでなく、論理的思考力と問題解決能力を鍛える 絶好の機会です。
課題や問題に直面した時に、冷静に分析して 解決策を見つけ出す力は、プログラミングだけでなく、日常生活や仕事など 様々な場面で役立ちます。
Scratchだから論理エラーの解決に集中できる
プログラミングのエラーには、大きく分けて2種類あります。
- 構文エラー:プログラミング言語のルールが守られていない
- 論理エラー:ルールは守っているのに、思った通りに動かない
プログラミング言語にはルールがあり、そのルールを守らないと、コンピュータは理解できません。
構文エラーは、スペルミスや文法的なまちがいなど、プログラミング言語のルールを 守っていないコードがあると発生します。
論理エラーは、コード自体は 文法的に正しく書かれているのに、思った通りに動かない場合に発生します。例えば、計算式や条件分岐が まちっている時に発生します。
論理エラーを特定するには、コードをていねいに読み解き、ロジックに誤りがないかを検証する必要があるため、よく考える練習にピッタリです。
ビジュアルプログラミング言語のScratch(スクラッチ)は、ブロックを組み合わせてプログラムを作成するので、構文エラーが発生しにくいのが特徴。
そのため、論理エラーの解決に集中できるのがとてもいいと思いました。
関連記事 子ども向けプログラミング言語「スクラッチ(Scratch)」の始め方
Scratch経験のある小学校高学年以上の人におすすめ
『エラーで学ぶScratch』では、変数の初期化や 条件のまちがいなど、プログラミングでよくあるエラーが出題されます。
5つのパートに分かれており、少しずつ難易度が上がっていきます。
- パート1:変数と演算(7問)
- パート2:繰り返し(15問)
- パート3:条件分岐(15問)
- パート4:ペン・リスト(9問)
- パート5:難問に挑戦しよう(4問)
パート1~4では基本的な問題を あつかっていて、小学生にもおすすめです。
パート5のチャレンジ問題は、複数のエラーがあるなど、難しい問題にチャレンジできます。
しかし、ふりがなが ふられていないため、小学校低学年の子どもには 読みづらいと感じました。
さらに、Scratchのブロックの仕様を ある程度理解している必要があります。文字列や変数、リストなどの用語や 概念にも理解が必要です。
そのため、この問題集は Scratch経験のある小学校高学年以上の子や、プログラミング初心者の大人におすすめします。
問題を解く手順
『エラーで学ぶScratch』の問題を解く手順を紹介します。
1. 正しい結果を確認する
問題文に書かれている 正しい結果を確認しましょう。
どのような動きをするプログラムなのか 理解することが大切です。
2. 問題のプログラムを動かして結果を見る
問題ページの下にある ScratchのサイトURL または QRコードからプロジェクトにアクセスし、プログラムを動かしてみましょう。
実際に動かしてみることで、問題がある場所を見つけやすくなります。
3. 問題のプログラムを見て間違っている場所を特定する
正しい結果と 実際の結果を比べて、プログラムのどこが間違っているのかを 特定しましょう。
ブロックの順番や、判定条件、変数がどう変わるのかなどを確認します。
4. 解決案を考える
まちがっている場所を特定したら、どのように修正すれば 正しい結果になるのか考えましょう。
解決策がひとつとは限りません。いくつか方法を考えてみてください。
5. プログラムを直して動かしてみる
考えた解決策を、プログラムに反映させます。
解決策が複数ある場合は、分かりやすさや 修正のしやすさなど 考えて選んでみてください。
修正後プログラムを動かして、正しい結果になるかどうか確認しましょう。
さらにチャレンジ
自信のある人は、本のプログラムだけを見て まちがっている場所を見つけてみるのも おすすめです。
コードを一文ずつていねいに読み解く必要があるので、より思考力をきたえられます。
エラーを特定するコツ
プログラムでエラーが出ると、「どうして?」と戸惑ってしまいますよね。
特にプログラミングを始めたばかりの頃は、なかなか原因が見つけられなくて途方に暮れてしまうことも。
『エラーで学ぶScratch』では、エラーを特定するためのいくつかのコツが紹介されています。
- 思い込みを疑う
- 変数を表示する
- 長いプログラムは分割する
- 条件分岐は 境目の値で確認する
- 乱数を使う場合は 範囲をせまくして確認する
上記のポイントに加えて、以下の2つの方法を紹介します。
ルートの確認
分岐の多いプログラムでは、どのルートを通っているのか 分かりにくいことがあります。
「〇〇と言う」ブロックを追加することで、どのルートを通っているのか 確認しやすくなります。
コメントを入れる
長いプログラムを読んでいると、どこで何が起こっているか分かりにくくなります。
処理のまとまりごとにコメントを追加することで、プログラムの流れを理解しやすくなり、問題を見つけやすくなります。
原因特定には時間がかかる場合もあります。あきらめずに ねばり強く調査を続けましょう。
まとめ
『エラーで学ぶScratch まちがいを見つけてプログラミング初心者から抜け出そう』を紹介しました。
プログラムのまちがいを 見つけて修正する作業を デバッグといいます。
プログラムのまちがいのことを バグ(bug)、それを取り除く作業(de)なので、デバッグ(debug)と呼ばれています。
デバッグは、プログラミング学習で不可欠な要素です。
デバッグを通して、プログラミングの理解を深め、論理的思考力と問題解決能力を きたえましょう!
下の記事では、プログラムのテスト方法を簡単な形に 小学生向けにアレンジして紹介しています。
テストをすることで、プログラムのまちがいを 見つけることができます。ぜひ参考にしてみてください。












