【アルゴロジック1】解答と考え方 チャレンジ問題「中級」

プログラミング

前回はプログラミング体験ゲーム「アルゴロジック」のアルゴロジック1のチャレンジ問題「初級」の解答を解説してきました。
今回は、アルゴロジック1 チャレンジ問題「中級」の14問を、解答に加えクリアするための考え方を解説していきます。

アルゴロジックでは、答えは一つではないため色々なクリア方法がありますが、本記事ではなるべく少ないブロックでクリアすると貰える「◎」クリアのルートを解答例に記載します。

アルゴロジックのルールにつきましてはルール解説編をご一読ください。

【プログラミング体験ゲーム】アルゴロジック1のルールとは?
2020年、プログラミング教育が小学校で必修化されましたが、親としては学校などで実際にどのような学習が行われているかよくわかっていませんでした。 そこで本記事は、プログラミング勉強中の筆者がアルゴロジックをやってみたという話題です。

「中級」の各問題の解答と考え方

中級編では、繰り返し処理が主体となります。
かなり難易度が上がってきますので、どこを繰り返していくかをうまく見極めていきましょう。



22 囲

アルゴロジック1 22 囲
画像引用:JEITA

このステージは中央の4つの旗を回収しながら繰り返し処理でぐるりと一周しても良いですが、それだと「〇」クリア止まりとなります。

アルゴロジックでは、既に回収した旗の場所を何度も通るとパーフェクトにならないようで、なるべく無駄な道を踏まないようにする必要があります。
このステージで「◎」を取るには少し工夫が必要です。

隅の4つの旗を取り、次の隅のスタート位置と同じ位置(繰り返しの開始位置)まで6マス移動します。この移動時に次の旗を取らないようにするのがポイントです。

その移動は6マスあるのですが、矢印ブロックは①~④、⑧しか指定できません。(6マス移動ができません)

ではどうやって6マス移動するのか?

配置エリアに横並びに矢印ブロックを置くと、そのブロックの動きが組み合わさります。
まっすぐ移動横移動を並べるとななめ移動になりますし、まっすぐ移動まっすぐ移動を並べると動きが足し算されます。
つまり、4マスと2マスを並べると、6マス移動になるということになります。
(これはなかなか気づきにくいですね)

解答例
アルゴロジック1 22 囲 解答例
画像引用:JEITA

右3マス移動します
まっすぐ3マス移動します
左3マス移動します
まっすぐ4マスまっすぐ2マスを組み合わせて6マス移動します
⑤回転ブロックでロボットを90°回転します
繰り返しブロックにより同じ動作を4回繰り返します

23 十字と旗八つ

アルゴロジック1 23 十字と旗八つ
画像引用:JEITA

このステージは四隅の部屋に旗が2つにあるので、一部屋の旗の回収を動作のかたまりとして繰り返して行きましょう。

スタート位置に注目し、次の繰り返しの開始位置に動作の終了をもってくるようにします。

解答例
アルゴロジック1 23 十字と旗八つ 解答例
画像引用:JEITA

まっすぐ4マス移動します
②回転ブロックでロボットを90°回転します
まっすぐ3マス右3マスを組み合わせてななめ移動します
左3マス移動します
まっすぐ1マス移動します
繰り返しブロックにより同じ動作を4回繰り返します

24 スコープ

アルゴロジック1 24 スコープ
画像引用:JEITA

このステージは外周の旗中央の十字部分にある旗を切り離して考えるのではなく、繰り返し処理で旗を回収していく方法を考えます。

ロボットが最初から右を向いているので、右上付近にある旗から攻めていきます。
この時、中央付近の旗も回収しながら、繰り返し処理で1周回るように考えてみましょう。

解答例
アルゴロジック1 24 スコープ 解答例
画像引用:JEITA

まっすぐ2マス移動します
まっすぐ2マス右2マスを組み合わせてななめ移動します
③回転ブロックでロボットを90°回転します
まっすぐ2マス移動します
右2マス移動します
左2マス移動します
繰り返しブロックにより同じ動作を4回繰り返します

25 旗車

アルゴロジック1 25 旗車
画像引用:JEITA

このステージでは白いラインを全て通ることでクリアとなります。

まず8個の旗模様のラインが目につきます。
これで8回繰り返し処理を行うことが想像できます。

「ななめになっている旗模様は大きさが違うじゃん。」

と思われる方もいるかもしれませんが、実はロボットがななめを向いた時、旗模様は同じ大きさになります。
つまり、横向きの旗模様の棒部分は3マスですが、ななめの旗模様の棒部分もロボットがななめを向いている時3マスになります。

これが理解できると、一つの旗模様を通る動作を8回繰り返せばクリアできることが分かります。

解答例
アルゴロジック1 25 旗車 解答例
画像引用:JEITA

まっすぐ3マス移動します
右1マス移動します
③回転ブロックでロボットを180°回転します
まっすぐ1マス移動します
右1マス移動します
まっすぐ2マス移動します
⑦回転ブロックでロボットを225°回転します
繰り返しブロックにより同じ動作を8回繰り返します

26 つむじ風

アルゴロジック1 26 つむじ風
画像引用:JEITA

このステージも先ほどの「25 旗車」と同じ考え方です。

線の長さが違いますが、ロボットがななめを向いている時は同じ動作でいけます。
どこの線から辿るかですが、なるべく使うブロックを少なくするために、左(または上)から始めましょう。
※解答例では左から辿る方法で記載します。

解答例
アルゴロジック1 26 解答例
画像引用:JEITA

まっすぐ2マス右1マスを組み合わせてななめ移動します
まっすぐ2マス移動します
③回転ブロックでロボットを270°回転します
2マス移動します
2マスまっすぐ1マスを組み合わせてななめ移動します
⑥回転ブロックでロボットを135°回転します
繰り返しブロックにより同じ動作を8回繰り返します

27 花

アルゴロジック1 27 花
画像引用:JEITA

このステージでは、花びらを一つ辿る動作を一つの動作のかたまりとして、4枚の花びらを辿るために4回繰り返しましょう。

最初のロボットの向きに注目して左側の花びらを最初に辿るようにします。

そして、一つの花びらを辿る動作にも繰り返し処理が使えそうです。
ただし、繰り返し回数が①~④、⑧しか指定できないため繰り返しは4回とし、足りない分は繰り返し外にします。
この一つの花びらを辿る動作をかたまりとして、更に繰り返しブロックで囲んでみましょう。

解答例
アルゴロジック1 27 花 解答例
画像引用:JEITA

まっすぐ1マス移動します
②回転ブロックでロボットを315°回転します
繰り返しブロックにより同じ動作を4回繰り返します
まっすぐ1マス移動します
⑤回転ブロックでロボットを90°回転します
繰り返しブロックにより同じ動作を4回繰り返します

28 四つ角の旗

アルゴロジック1 28 四つ角の旗
画像引用:JEITA

このステージでは、角にかたまっている3つの旗を取る動作を繰り返してみましょう。
ここでは左上角の旗の回収を動作のかたまりとします。

一番角の旗を取った時に、方向転換します。
この方向転換する向きは、次の繰り返しのスタート向きにしましょう。解答例では次のターゲットを右上角にするため90°回転で右向きにします。

解答例
アルゴロジック1 28 四つ角の旗 解答例
画像引用:JEITA

4マスまっすぐ2マスを組み合わせてななめ移動します
まっすぐ2マス移動します
③②回転ブロックでロボットを90°回転します
まっすぐ2マス移動します
4マスまっすぐ2マスを組み合わせてななめ移動します
繰り返しブロックにより同じ動作を4回繰り返します

29 折り紙遊び

アルゴロジック1 29 折り紙遊び
画像引用:JEITA

このステージはパーフェクト「◎」クリアを阻む最難関ではないかと思います。

結論から申し上げますと、私はこのステージは「◎」クリアできておりません。
従いましてここでの解答例のみ「〇」クリアでの解説となります。

それでは考え方です。

パッと見ごちゃごちゃしていてどう辿っていけば良いかわかり辛いです。
よく見ると、2マス×2マスの正方形8個あります。中央に4つ「田」の形のものと、45°傾けた「田」が重なっているのがお分かりになりますでしょうか。

この二種類の「田」は、大きさが違いますがどの正方形も2マス移動×4回で辿ることができます。
それを45°ずつ8回繰り返す事でクリアできます。
(ブロックの数は最少だと思うんだけどな・・・)

解答例
アルゴロジック1 29 折り紙遊び 解答例
画像引用:JEITA

まっすぐ2マス移動します
②回転ブロックでロボットを90°回転します
繰り返しブロックにより同じ動作を4回繰り返します
④回転ブロックでロボットを45°回転します
繰り返しブロックにより同じ動作を8回繰り返します

30 トゲトゲ

アルゴロジック1 30 トゲトゲ
画像引用:JEITA

このステージではトゲが8個あるので、どこかの動作を8回繰り返す事が想像できます。
どこを一つの動作のかたまりとしたら良いか考えてみましょう。また、その動作のかたまりも繰り返し処理でいけます。

解答例
アルゴロジック1 30 トゲトゲ 解答例
画像引用:JEITA

まっすぐ1マス進みます
②回転ブロックでロボットを45°回転します
繰り返しブロックにより同じ動作を3回繰り返します
④回転ブロックでロボットを180°回転します
繰り返しブロックにより同じ動作を8回繰り返します

※④で次の繰り返しのために180°回転(方向転換)するまでを動作のかたまりとします

31 T

アルゴロジック1 31 T
画像引用:JEITA

ここも「T」の大きさが違いますが、同じ動作で「T」を辿ることができます。
先ほどと同じように次の繰り返しのための回転(方向転換)までを動作に入れるのがポイントです。

解答例
アルゴロジック1 31 T 解答例
画像引用:JEITA

まっすぐ3マス移動します
左1マス移動します
右2マス移動します
左1マス移動します
⑤回転ブロックでロボットを180°回転します
まっすぐ3マス移動します
⑦回転ブロックでロボットを225°回転します
繰り返しブロックにより同じ動作を8回繰り返します

32 卍

アルゴロジック1 32 卍
画像引用:JEITA

このステージも同様に卍の枝の部分を4回繰り返します。
次の繰り返しのための回転(方向転換)までを動作に入れましょう。

解答例
アルゴロジック1 32 卍 解答例
画像引用:JEITA

まっすぐ4マス移動します
左4マス移動します
③回転ブロックでロボットを90°回転します
まっすぐ2マス移動します
左2マス移動します
まっすぐ2マス移動します
⑦回転ブロックでロボットを90°回転します
繰り返しブロックにより同じ動作を4回繰り返します

33 四つ葉

アルゴロジック1 33 四つ葉
画像引用:JEITA

このステージはちょっとした2つの盲点があります。

繰り返して行く考え方は正解です。
ただし、ロボットが中央にいる状態でステージが始まりますが、今までのようにこの地点からの動作を動作のかたまりとするとクリアできません。

まずは中央からの動きを繰り返し動作とする発想を捨てます。
具体的には、斜め移動で角の旗まで移動し、ここを繰り返し動作の開始地点にします。これが一つ目の盲点です。
(この斜め移動は、ぎりぎりグレーのマス上で移動できます。)

そして、二つ目の盲点はロボットの移動についてです。

ロボットの移動は、グレーのマス上を移動できます。
グレーの各マスは、隣り合っていることが条件ですが、接地は面に加えて実は角の接地でも移動が可能です。
次の繰り返しの開始地点までは、この角接地の移動を使います。

解答例
アルゴロジック1 33 四つ葉 解答
画像引用:JEITA

まっすぐ4マス左1マスを組み合わせてななめに進みます
②回転ブロックでロボットを90°回転します
まっすぐ2マス移動します
右2マス移動します
まっすぐ1マス右1マスを組み合わせてななめに進みます
まっすぐ2マス移動します
繰り返しブロックにより同じ動作を4回繰り返します

※②~⑥を動作のかたまりとします

34 マジックハンド

アルゴロジック1 34 マジックハンド
画像引用:JEITA

このステージは、左上から繰り返し処理で下に行き、同じ動作で上に戻ってくる事でもクリアできますが、もう少しシンプルにする事が可能です。

左上から繰り返しながら右下に移動する方法を考えてみましょう。

解答例
アルゴロジック1 34 マジックハンド 解答例
画像引用:JEITA

右2マス移動します
左2マス移動します
まっすぐ2マス移動します
右2マス移動します
繰り返しブロックにより同じ動作を4回繰り返します

35 ペンペン草

アルゴロジック1 35 ペンペン草
画像引用:JEITA

チャレンジ問題「中級」の最後のステージです。

中級で何度か登場しましたが、同じ動作のかたまりを8回繰り返してみましょう。
ぺんぺん草の葉(虫眼鏡のような形)を一つの動作のかたまりとします。

ただし、一つの葉を辿るのにも繰り返し処理を使うのですが、工夫が必要です。

直角回転は使わずに、45°の傾きを2つ利用して直角に曲がるようにするのがポイントです。

解答例
アルゴロジック1 35 ペンペン草 解答例
画像引用:JEITA

左2マス移動します
②回転ブロックでロボットを315°回転します
まっすぐ1マス移動します
④回転ブロックでロボットを315°回転します
繰り返しブロックにより同じ動作を4回繰り返します
右2マス移動します
⑦回転ブロックでロボットを45°回転します
繰り返しブロックにより同じ動作を8回繰り返します

※②~④をまず動作のかたまりとして4回繰り返します
そして上記を含めた①~⑦を動作のかたまりとして8回繰り返します

アルゴロジック1 チャレンジ問題「中級」まとめ

今回はチャレンジ問題の中級編を解説しました。

だいぶ難易度が上がってきましたが頑張って「◎」を目指してみましょう!

私は何度も「29 折り紙遊び」をチャレンジしていますが、どうしても「◎」でのクリアができませんでした。
引き続きチャレンジして「◎」クリアができたら更新したいと思います。

次は【アルゴロジック1】解答編 チャレンジ問題「上級」を解説していきます。

【アルゴロジック1】解答と考え方 チャレンジ問題「上級」
前回のプログラミング体験ゲーム「アルゴロジック」のアルゴロジック1のチャレンジ問題「中級」の解答編に続き、今回はアルゴロジック1のチャレンジ問題「上級」を解説します。アルゴロジック1は今回で最後となります。

コメント

  1. 匿名 より:

  2. 良い良い良い良い良い良い良い良いい良いいぃ より:

    28◎わからん

  3. 匿名 より:

    アルゴロジック2もやって

  4. 匿名 より:

    すごいわかりやすい

  5. 匿名 より:

  6. 匿名 より:

    楽しい

  7. 匿名 より:

    楽しい

  8. 泉ピン子 より:

    28が二重丸にならないんですけどどうしたらいいですか??

  9. 匿名 より:

    28が二重丸にならないんですけどどうしたらいいですか??

  10. より:

    29の二重丸は

    繰り返し8
    前2
    左2
    ↘️
    前2 右2
    カッコとじ

    です

  11. とくめー より:

    28がなぜか◎にならないんですけどどうしたらいいですか?

  12. 匿名 より:

    「28 四つ角の旗」の最短手数が最近アップデートされたようで、6手で「◎」になりましたね。
    これは他の問題(19、49等)との類似性に気が付けば「29 折り紙遊び」の「◎」より簡単ですが。

  13. うんこ より:

    馬鹿は自分で考えろ

  14. 匿名 より:

    へん

  15. 家宝 より:

    29問目
    繰り返し8
    ↑2
    ←2
    右下に向いて
    ↑2→2
    繰り返し終了
    で出来ます

  16. より:

  17. wxjfdb.com より:

    whoah this blog is great i really like studying your articles.

    Stay up the good work! You realize, many individuals
    are looking round for this information, you could help them greatly.

  18. minecraft より:

    This is my first time go to see at here and i am actually happy to read
    all at single place.

  19. Thankfulness to my father who shared with me concerning this website, this web site is genuinely remarkable.

  20. Hello to every body, it’s my first pay a visit of this blog;
    this web site consists of remarkable and genuinely excellent material in favor of
    readers.

  21. It’s in fact very complex in this active life
    to listen news on TV, therefore I simply use world wide
    web for that purpose, and take the most recent information.

  22. If some one wishes expert view concerning blogging and site-building afterward
    i suggest him/her to pay a quick visit this webpage, Keep
    up the good work.

  23. My relatives every time say that I am killing my time
    here at web, but I know I am getting know-how everyday by reading thes nice content.

  24. Hurrah! Finally I got a website from where I be capable of truly obtain useful facts regarding my
    study and knowledge.

  25. Excellent post. I definitely appreciate this site.

    Stick with it!

  26. bbs.hdtt1.tw より:

    If some one needs expert view about running a blog afterward i suggest
    him/her to visit this web site, Keep up the
    good work.

  27. This paragraph is really a nice one it helps new web people, who are
    wishing in favor of blogging.

  28. Great post.

  29. 匿名 より:

    攻略の参考にさせていただきました。
    そして、「29 折り紙遊び」も何とか自力で6手「◎」クリアできました。
    中央で45度ずつ回転させ8回の発想ではできません。
    中の田の部分を移動3回+回転、外の田の部分を移動3回+回転で中央に戻り、それを4回ループが元になります。
    ループ内の部分をうまく改良すると中の田の部分、外の田の部分の移動パターンが回転も含めて同形とできるため、
    (移動3回+回転)×ループ2回に圧縮でき、外のループと融合させループ8回にして完成です。

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