Return to Video

プログラマーのように考える 第1話 「脱出」

  • 0:30 - 0:37
    眠りから覚めたエシックは
    不運にも3つの驚きに迎えられます
  • 0:37 - 0:40
    1つめ
    どうも監禁されているらしい
  • 0:40 - 0:44
    2つめ
    まったく記憶がない
  • 0:44 - 0:47
    そして3つめ
    見たことのない不思議な何かが
  • 0:47 - 0:51
    窓のすき間から
    入ってこようとしている
  • 0:51 - 0:56
    彼の名前はヘッジ
    エシックが世界を救うのを手助けに来たのです
  • 0:56 - 1:00
    でもその前に ここから
    脱出しなければなりません
  • 1:00 - 1:06
    ヘッジは手をピッキングツールに変形させると
    待ち受けている難題を説明します
  • 1:06 - 1:11
    この牢屋の扉の錠前はどれも
    同じ変わった方法で動きます
  • 1:11 - 1:17
    鍵穴の中には赤いダイヤルがあり
    1から100までの番号のついた―
  • 1:17 - 1:20
    100通りの位置に
    合わせることができます
  • 1:20 - 1:24
    独房の鍵を使えば
    ダイヤルが正しい位置まで回り
  • 1:24 - 1:29
    そこでダイヤルが緑色になって
    扉が開きます
  • 1:29 - 1:34
    でも見張りから
    鍵を盗めそうにはありません
  • 1:34 - 1:37
    ヘッジは名案があると言います
  • 1:37 - 1:39
    ヘッジはエシックの命令を
    実行することができるのです
  • 1:39 - 1:43
    エシックが
    「前に5歩進んで
  • 1:43 - 1:46
    右折し
    また5歩進め」と言えば
  • 1:46 - 1:49
    ヘッジはその通りにします
  • 1:50 - 1:53
    でも それには正確な指示が必要です
  • 1:53 - 1:57
    「解錠せよ」とか
    「すべてのダイヤル位置を試せ」では
  • 1:57 - 1:59
    あいまいすぎます
  • 1:59 - 2:04
    「ダイヤルを5目盛り進めろ」なら
    大丈夫です
  • 2:04 - 2:08
    この独房を出られたら
    わずかな時間の間に
  • 2:08 - 2:12
    外へ通じる扉も解錠しないと
    見張りに捕まってしまいます
  • 2:12 - 2:18
    ヘッジに効率よく扉を開けさせるには
    どんな指示をしたらいいのでしょう?
  • 2:20 - 2:24
    ビデオをいったん止めて
    自分で考えてみましょう
  • 2:26 - 2:30
    答えを説明する前に
    ヒントをあげます
  • 2:31 - 2:37
    扉を解錠するカギとなる
    プログラミングの考え方は「ループ」です
  • 2:37 - 2:40
    これは1つないしは
    複数の指示を
  • 2:40 - 2:45
    指定した回数だけ
    繰り返し実行させるものです
  • 2:47 - 2:50
    「100回 上下にジャンプして」などです
  • 2:50 - 2:55
    あるいは ある条件を満たすまで
    指示を繰り返し実行させることもできます
  • 2:55 - 3:01
    例えば「7時になるまで
    上下にジャンプして」などです
  • 3:01 - 3:06
    [ビデオをいったん止めて
    自分で考えてみましょう]
  • 3:06 - 3:10
    まず はっきりしているのは
    正しいダイヤル位置が見つかるまで
  • 3:10 - 3:14
    ヘッジに全部試させる方法を
    見つなければならないことです
  • 3:14 - 3:19
    それには正確にどうすればよいかは
    少し頭を使う必要があります
  • 3:19 - 3:24
    1つの方法は ヘッジに1つずつ順に
    ダイヤル位置を試すよう指示することです
  • 3:24 - 3:27
    1に合わせて ライトを確認し
  • 3:27 - 3:32
    緑になったら 扉を開け
    そうでなければ2に合わせる
  • 3:32 - 3:38
    それもダメなら3に合わせる
    これを100まで続けます
  • 3:38 - 3:42
    でも この手順を全部
    書き出すのは大変です
  • 3:42 - 3:45
    100行以上もコードを書くのは
    ばかげています
  • 3:45 - 3:48
    もし3行で済むのだとしたら
  • 3:48 - 3:51
    ここでループの登場です
  • 3:51 - 3:54
    やり方がいくつかあります
  • 3:54 - 3:56
    錠前のダイヤルには
    100通りの位置があるので
  • 3:56 - 4:02
    「ダイヤルの色を確かめ
    ダイヤルを1目盛り進める—
  • 4:02 - 4:06
    というのを100回繰り返せ」と
    指示することができます
  • 4:06 - 4:13
    ダイヤルが緑になった位置を覚えておいて
    最後にそこまで戻させます
  • 4:13 - 4:17
    繰り返す回数を指定する
    このようなループを
  • 4:17 - 4:20
    「for ループ」と言います
  • 4:20 - 4:22
    でも もっと効率的な
    やり方があります
  • 4:22 - 4:27
    緑色になるまで
    1目盛りずつダイヤルを回させて
  • 4:27 - 4:32
    緑になったらすぐにやめて
    扉を開けさせればいいのです
  • 4:32 - 4:35
    このやり方なら
    1の位置で解錠できたときに
  • 4:35 - 4:39
    ぐるりと1周する必要が
    なくなります
  • 4:39 - 4:42
    これを「until ループ」と言います
  • 4:43 - 4:47
    ある条件を満たす「まで」
    実行するからです
  • 4:47 - 4:52
    これに似た別のやり方は
    赤色の間はダイヤルを回し続け
  • 4:52 - 4:54
    そうでなくなったら
    やめるというものです
  • 4:54 - 4:57
    これは「while ループ」と言います
  • 4:58 - 5:00
    冒険に話を戻しましょう
  • 5:00 - 5:06
    ヘッジはダイヤル位置を順に試し
    41の位置で錠前が開きます
  • 5:07 - 5:11
    エシックとヘッジは
    見張りのいないときを見計らって
  • 5:11 - 5:14
    うまく脱出します
  • 5:14 - 5:20
    すぐに エシックは選択を迫られます
    謎のクリスタルの中に隠れるか
  • 5:20 - 5:24
    外の扉の錠前も破って
    逃げるかの2択です
  • 5:24 - 5:26
    エシックは脱出を選びます
  • 5:28 - 5:35
    2つめの扉には少し時間がかかり
    ヘッジは93まで回す必要がありましたが
  • 5:35 - 5:37
    開けることに成功します
  • 5:44 - 5:49
    ここでヘッジはエシックを
    助けた理由を説明します
  • 5:49 - 5:50
    世界は混乱のただ中にあり
  • 5:50 - 5:55
    ロボットに侵略された世界を救えるのは
    エシックだけだというのです
  • 5:55 - 5:56
    そのためには
  • 5:56 - 5:58
    3つの強力なアイテムを
    集めなければなりません
  • 5:58 - 6:02
    今は それが邪悪な目的に
    用いられているのです
  • 6:02 - 6:05
    それを集めて初めて
    世界を動かしている機械の大元である
  • 6:05 - 6:09
    巨大クリスタルのところへ行き
    世界を取り戻せるのです
  • 6:20 - 6:23
    エシックはなんとか
    脱出はしたものの...
  • 6:23 - 6:26
    一体 どんな冒険に
    足を踏み入れてしまったのでしょう?
Title:
プログラマーのように考える 第1話 「脱出」
Speaker:
アレックス・ローゼンタール
Description:

アニメシリーズ『プログラマーのように考える』の第1話。全10話から成るこのシリーズは、エシックという女の子とロボットの相棒ヘッジが世界を救うために頑張るお話です。2人は3つのアイテムを集める冒険に出発しますが、その途中プログラミングのパズルを解きながら進まなければなりません。

講師:アレックス・ローゼンタール
監督:Kozmonot Animation Studio

*このビデオの教材:https://ed.ted.com/lessons/the-prison-break-think-like-a-coder-ep-1

more » « less
Video Language:
English
Team:
closed TED
Project:
TED-Ed
Duration:
06:34

Japanese subtitles

Revisions