知育絵本「ルビィのぼうけん こんにちは!プログラミング」の練習問題を解く

プログラミング教育が必修化になり、

子どもと一緒に
「ルビィのぼうけん こんにちは!プログラミング」を読んで
プログラマー的な考え方を養いたい!

と、この絵本を手に取った方ものの、

  • 物語のどの部分がプログラマー的な考え方なの?
  • 練習問題の解き方が分からない…

と、悩んでいる方がいるのではないでしょうか。

 

この記事では、「ルビィのぼうけん こんにちは!プログラミング」の
物語にちりばめられたプログラマー的な考え方と、
練習問題で気になった問題を紹介します。

 

これからルビィのぼうけんを読んでみようと思っている方や、
買ってみたけれど どう読んでいいか分からない…という方の参考になればと思います。

 

スポンサーリンク

プログラミングが学べる絵本「ルビィのぼうけん」とは?

「ルビィのぼうけん」とはフィンランドの
女性プログラマーリンダ・リウカスさんが、
子どもがプログラミングを学ぶ糸口となるように作った知育絵本。

翻訳は、プログラミング言語Rubyを使用するプログラマーの鳥井雪さんです。

 

好奇心旺盛な女の子ルビィの物語を楽しめる「絵本パート」と、
絵本パートでふれた考え方をより深く体験できる「練習問題パート」を通じて、
プログラミングに必要な考え方にふれることができます。

 

カラフルで温かみのあるイラストなので、
女の子でも抵抗なく読むことができますよ。

対象年齢は5歳からですが、子どもだけでなく大人も楽しめる作品です。


 

小学校の授業でも活用されています

コンピュータを使わないでプログラミング的思考を学ぶ教材として
小学校の授業で活用された実践事例もあり、
未来の学びコンソーシアム小学校を中心としたプログラミング教育ポータル」にも
掲載されています。

 

絵本パート:ちりばめられたプログラマー的な考え方

物語の中に、プログラマー的な考え方がちりばめられています。

いくつか紹介していきます。

プログラミングとは

ルビィは「こうしなさい」って言われるのがきらい。
だからはっきりしない命令を言われると、ときどきこまったことになります。

プログラミングとは、
コンピュータに向かって何を・どの順番で
やるのかを1つずつ命令することです。

命令が何をやるのかはっきりしていないと、
コンピュータはまちがった動きをしてしまいます。

 

ルビィは「お洋服を着なさい」と言われて
パジャマの上からワンピースを着てしまいます。

「まずパジャマをぬぎなさい」という指示がなかったからと、
コンピュータのマネをして、わざとまちがえた動きをしました。

 

分解と組み立て

手におえない問題は、たいてい、小さな問題が、あつまってできているのです。

分解組み立ての考え方です。

むずかしい問題は、小さくかんたんな問題に分けて(分解)、
分けた問題どうしの関係を整理します(組み立て)。

 

ルビィは「計画を立てよう!」と、
ヒント(小さな問題)を地図を使って整理し、行ってみる場所の順番を決めました。

 

抽象化と具体化

ペンギンたちにしつもんするときは、
もっとくわしく、こまかく言わないといけないようです。

大事なことだけを、考えてごらんなさい。
話をむずかしくする、ごちゃごちゃしたことは、わすれて、
そうしたら、いい考えが思いつく

抽象化具体化の考え方です。

抽象化(ちゅうしょうか)とは、一番大切なところだけ残して、
細かいところを気にしないようにすることです。

反対に、情報を増やして細かく表すことを具体化(ぐたいか)といいます。

 

雪ひょうはすっきりして、きちんとしたものが好き。
色がいっぱいでキラキラした宝石にイライラしています。
色を情報に見立てた例えになっています。

逆にペンギンたちは「宝石」という単語の
意味が通じないので、情報を増やして伝える必要がありました。

 

条件分岐(場合分け)、くり返し(ループ)

あなたたちは、タネまきがかり!タネの入ったふくろを持って、
畑の穴が空っぽだったら、にんじんのタネをまいて。

もし、もうタネが穴にあったら、次の穴へどうぞ。

列のはしっこまで来たら、次の列へどうぞ。

今まで言ったことを、5回くりかえしてね。

「もし~だったら」は、条件分岐(場合分け)の考え方です。
条件によって、やることが変わります。

「5回くりかえしてね」はくり返し(ループ)の考え方。
同じ命令を 何回も行うことです。

 

オープンソース

レシピは、みんなで分け合うと、もっとすてきなものになるよ。
そうして、分け合ったら、友だちになれるんだ

オープンソースの考え方です。
オープンソースとは、誰でも自由に使えるプログラムのこと。

ソース(ソースコード)とは、
プログラミング言語によって記述されたプログラムのことです。

 

ロボットたちは、ルビィにカップケーキのレシピを教えてくれました。
料理のレシピをネット上に公開して、みんなに作ってもらうようなイメージです。

 

PR<はじめてのプログラミング学習にぴったり> 「CREATE by KOOV」公式サイト

練習問題パート:元プログラマーが解いてみた!

プログラム経験のない夫と二人で解いてみた感想ですが、
小さな子どもが一人で解くのは少しむずかしいと感じました。

大人が「おどうぐ箱」という解説を読んで、練習問題の意図を理解してから
お子さんと一緒に解くことをおススメします。

 

また、練習問題パートを読み終わってから
絵本パートをもう一度読み返すと、
より物語の理解が深まりますよ。

 

大の大人二人が???と困惑する問題がいくつかあったので
分かりにくかった問題を中心に紹介します。
よかったら参考にしてみてください。

れんしゅう1~5の答え(ヒント)は特設サイトにあります。

れんしゅう6:真偽(本当とまちがい)

どれが本当かクイズ。

しあわせなオジャマ虫

「わたしは、しあわせ 本当/まちがい」

 

「しあわせ」って何だろう……?(哲学)

 

「しあわせ」がどういう状態なのか分からないと判断できません。

例えば「笑っていたら幸せ」と具体的な条件があれば
これは「まちがい」と判断できそうです。

 

やってみようの部分で”本当かまちがいか、
どちらかわかりにくい言い方にしよう!”とあるので、
あえて分かりにくい問題にしたのかもしれないです。

 

れんしゅう13:場合分け

指令ボタン
ノートに、それぞれの色の指令を書こう。
ボタンをひとつたたいたら(お仕事みたいに、まじめにやってね!)
もうひとりがその色の指令の通りに動く。どれだけ速くたたけるかな?

「どれだけ速くたたけるかな?」というフレーズが気になりました。

人間だとおなじ行動を何回もくり返したら、
つかれてしまったり、まちがえたり、あきてしまいます。

コンピュータは何回おなじことを命令されても
つかれないし、文句も言わないで、
正確にやってくれるということを伝えたいのかなと思いました。

 

れんしゅう14:場合分け

問題は6番目と7番目の問題

れんしゅう14問題

 

画像は6番目の問題です。

畑の状態をトレースしてみると…
命令を順番にたどって、状態を確認することトレースといいます。)

れんしゅう14トレース1

れんしゅう14トレース2

 

3回目のループの「草むしり」では、
タネをおとした後に 次の穴へうつる命令がありません。

そのため4回目のループで、
3回目のループと同じ穴にタネをおとしてしまいます。

最終的に、3番目の穴だけタネが2つおとされていて、
他の穴にはタネが1つずつおとされている状態になります。

 

解決するには、「草むしり」の命令を
「オジャマ虫をどかして、
 あいた穴にタネをおとして、

 右の穴にうつる。」
にしたらうまくいきそうですね。

他にも解決方法があると思うので、ぜひ考えてみてください。

 

れんしゅう16:作り出す力とプログラマーらしい考え方

やってみようの部分。
ルビィのおしゃれのルールを考えて、友だちにルールを当ててもらうゲーム。

気分がよくないときは何を着ているのがいいかな

もし「気分がわるいなら」

 

このルールがゆるされるのなら、当てるのはムリな気が…

 

れんしゅう19:デバッグ

やってみようの部分。正直、意図が分かりませんでした。

手でかくすことの意味、「オジャマ虫の頭をシュッとはらっちゃって」とは
どういうことなのか……???
分かる方がいたら教えて欲しいです。

 

れんしゅう22:今までのまとめ

カップケーキカードのまい数が気になりました。

カップケーキカードを10まい~15まい作ろうとありますが、
カップケーキカード係をのぞいたプレイヤーの人数によって
必要な まい数が変わってきますよね。

 

ロボットたちのマスに止まった時、
サイコロをふって出た数のぶん
カップケーキカードがもらえるので、
まずプレイヤーの人数×6まいは必要です。

また、パイソンのマスで勝負に負けた場合、
パイソンにわたす分も考える必要があります。

 

あと気になったのが、パイソンのマスのルール

パイソンは、きみに勝負をもうしこむ!サイコロをふってね。

もし2でわって余がある数が出たら、パイソンの勝ち。
パイソンはカップケーキをひとつもらって、ジャンゴと分ける。

もし、2でぴったりわれる数が出たら、
パイソンは、もってるカップケーキを、ぜんぶきみにくれるよ!

パイソンが勝った場合の
「パイソンはカップケーキをひとつもらって、ジャンゴと分ける。」がよく分かりませんでした。

カードをビリビリと破いて2つに分けるのでしょうか?

パイソンが負けた場合、
パイソンが持っているカップケーキカードをプレイヤーに渡すことになるので、
パイソンに渡したカードの扱いは、分かるようにして欲しかったです。

 

いろいろな角度から考えてみよう!

重箱のすみをつつくような指摘だと思われそうですが、
命令が何をやるのかはっきりしていないと
コンピュータはまちがった動きをしてしまいます。

訳し方の問題なのか分かりませんが、
指示の情報が足りない感は否めませんでした。

 

しかし最初にあった「保護者の方へ」のページで、

同じ問題をさまざまな角度から解釈するのは、
ごく普通のことですし、なんの問題もありません。
その全部が、「プログラマー的思考法」を構成する一部なのです。

とあるので、あえて分かりにくい表現やバグ(プログラムの間違い)を
混ぜているのかもしれないと感じました。

読めば読むほど、ルビィのように「どうして?」が出てきます。

 

まとめ:プログラマー的な考え方を感じられる一冊

プログラムの本というと、
むずかしい用語がたくさん出てきて
拒否反応を起こしてしまう人も多いと思います。

 

しかしプログラマー的な考え方を
感覚的に学べる「ルビィのぼうけん」は、
とてもユニークで、子どもも大人も楽しく読むことができます。

 

「プログラミングって楽しい!」
「コンピュータと仲良くなれそう!」
と思えれば、
この絵本の目的は達成できたといえるのではないでしょうか?

プログラミング教育の入り口にぴったりな絵本だと思いました。

 

ルビィのぼうけんシリーズは、他にも
「コンピューターの国のルビィ」
「インターネット探検隊」
「AIロボット、学校へいく」があります。

 

 

タイトルとURLをコピーしました