Return to Video

Втеча з в'язниці | Думай як програміст. Епізод 1

  • 0:30 - 0:37
    Повернувшись до тями, Етік виявила
    три неприємні сюрпризи.
  • 0:37 - 0:40
    Перший: тюремна камера.
  • 0:40 - 0:44
    Другий: цілковита втрата пам'яті.
  • 0:44 - 0:47
    Третій: таємничий незнайомець застряг,
  • 0:47 - 0:51
    намагаючись проштовхнутись
    через ґрати на віконечку в її камеру.
  • 0:51 - 0:56
    Його звати Гедж, і він прийшов, аби
    допомогти Етік врятувати світ.
  • 0:56 - 1:00
    Та перш за все, їм необхідно
    втекти з в'язниці.
  • 1:00 - 1:06
    Гедж перетворює його руку на ключик
    й коротко описує задачу.
  • 1:06 - 1:11
    Кожен замок у в'язниці працює
    в однаковий незвичайний спосіб.
  • 1:11 - 1:17
    Усередині замка є червоний диск, що може
    повертатись і приймати 100 позицій
  • 1:17 - 1:20
    від 1 до 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:50
    то Гедж зробить саме це.
  • 1:50 - 1:53
    Однак йому необхідні точні інструкції.
  • 1:53 - 1:57
    Якщо Етік скаже: "Підбери ключа"
    або "Спробуй кожну комбінацію",
  • 1:57 - 2:04
    то команда буде незрозумілою, але "поверни
    диск на 5 позицій вперед" спрацює.
  • 2:04 - 2:08
    Як тільки вони вийдуть із камери,
    у Геджа й Етік буде лише кілька хвилин,
  • 2:08 - 2:12
    щоб відчинити ще й зовнішні двері в'язниці
    до того, як охоронці їх спіймають.
  • 2:12 - 2:18
    Тож, які інструкції дозволять Геджу
    відкрити будь-які двері?
  • 2:20 - 2:24
    Постав, будь ласка, відео на паузу,
    щоб розібратися.
  • 2:26 - 2:31
    Перед тим, як ми пояснимо рішення,
    ось тобі підказка.
  • 2:31 - 2:37
    Ключова концепція програмування, яка
    допоможе відкрити двері, зветься циклом.
  • 2:37 - 2:43
    Це може бути одна чи кілька інструкцій,
    які Гедж повторить
  • 2:43 - 2:47
    задану кількість разів.
  • 2:47 - 2:50
    Наприклад,
    "стрибни вгору та вниз 100 разів".
  • 2:50 - 2:55
    Або інструкція, яку Гедж повторюватиме,
    допоки не виконається задана умова,
  • 2:55 - 3:00
    така як "продовжуй стрибати вгору-вниз
    до сьомої години".
  • 3:00 - 3:06
    Будь ласка, зараз постав відео на паузу,
    щоб розібратись.
  • 3:06 - 3:10
    По-перше, зрозуміло, що тобі
    треба знайти спосіб, за допомогою якого
  • 3:10 - 3:14
    Гедж зможе перебирати усі комбінації,
    допоки одна з них не спрацює.
  • 3:14 - 3:19
    Трошки більше зусиль потрібно, щоб
    зрозуміти, як же ти можеш це зробити.
  • 3:19 - 3:24
    Рішення №1: сказати Геджу спробувати
    усі комбінації по черзі.
  • 3:24 - 3:27
    Спробуй кобінацію 1 і перевір колір.
  • 3:27 - 3:32
    Якщо диск зелений, відкрий двері;
    якщо ні, спробуй комбінацію 2.
  • 3:32 - 3:38
    Якщо вона не спрацює, спробуй 3.
    І так аж до 100.
  • 3:38 - 3:42
    Однак розписувати дії покроково
    в такому обсязі дуже нудно.
  • 3:42 - 3:44
    Навіщо писати більше, ніж 100 рядків коду,
  • 3:44 - 3:48
    якщо можна досягти потрібного результату
    за допомогою 3 рядків?
  • 3:48 - 3:51
    Саме тут з'являється цикл.
  • 3:51 - 3:54
    Існує декілька способів,
    якими можна скористатись.
  • 3:54 - 3:56
    У замка є 100 позицій,
  • 3:56 - 4:02
    тож Етік може сказати "Перевір колір
    диска, а потім прокрути його один раз,
  • 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
    сказати Геджу прокручувати диск
    на одну позицію, доки він не стане зеленим,
  • 4:27 - 4:32
    і коли це станеться, нехай він
    зупиниться і відкриє двері.
  • 4:32 - 4:35
    Таким чином, якщо двері відчиняться на 1,
  • 4:35 - 4:39
    Геджу не доведеться перевіряти
    інші номери.
  • 4:39 - 4:43
    Це цикл "until".
  • 4:43 - 4:47
    Він передбачає виконання дії доти,
    доки умова не буде виконаною.
  • 4:47 - 4:52
    Схожий підхід - це крутити диск,
    поки він червоний,
  • 4:52 - 4:54
    а потім зупинитись.
  • 4:54 - 4:58
    Цей цикл називається while (поки).
  • 4:58 - 5:00
    Повертаємось до пригод!
  • 5:00 - 5:07
    Гедж пробирається через комбінації цифр,
    і камера відчиняється на 41.
  • 5:07 - 5:11
    Етік та Гедж чекають зручного моменту
    при ротації вартових
  • 5:11 - 5:14
    і тікають.
  • 5:14 - 5:20
    Згодом, Етік постає перед вибором:
    заховатись усередині таємничого кристалу
  • 5:20 - 5:24
    чи спробувати зламати зовнішні двері
    й утекти.
  • 5:24 - 5:26
    Етік вирішує тікати.
  • 5:28 - 5:35
    Другі двері займуть більше часу,
    бо Геджу потрібно прокрутити диск до 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
    їм знадобиться зібрати
    три могутніх артефакти,
  • 5:58 - 6:02
    які використовують у дуже поганих цілях
    в усіх куточках планети.
  • 6:02 - 6:06
    Тільки тоді Етік зможе повернутись до
    світової машини - кристала-гіганта -
  • 6:06 - 6:07
    і виправити становище.
  • 6:20 - 6:23
    Етік вдалося втекти з в'язниці...
  • 6:23 - 6:25
    але у що вона вплуталась?
Title:
Втеча з в'язниці | Думай як програміст. Епізод 1
Speaker:
Алекс Розенталь
Description:

Повну версію уроку можна переглянути за посиланням: https://ed.ted.com/lessons/the-prison-break-think-like-a-coder-ep-1

Це перша частина нашої анімованої серії "Думай як програміст". У 10 епізодах ми спостерігаємо за спробами дівчинки Етік та її робота-компаньйона Геджа врятувати світ. Ці двоє вирушають у подорож у пошуках трьох артефактів і повинні знайти їх шляхом розв'язання серії задач із програмування.

Лекція: Алекс Розенталь, анімація: Kozmonot Animation Studio.

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

Ukrainian subtitles

Revisions