Etyka, Hedge i Adila, liderka rewolucji,
planują ukraść artefakt zwany Węzłem Mocy.
Napędza on opancerzony pociąg,
który jeździ po całym kraju,
dostarczając zapasy do osad i baz.
Ten uzbrojony potwór
przechodzi skomplikowaną
i niemożliwą do przewidzenia
procedurę rozładowania,
procedurę, którą widać szczegółowo
na ekranie w sterówce lokomotywy.
Strzałka w prawo oznacza, że pociąg
przesunie się o wagon naprzód,
strzałka w lewo - o wagon w tył.
Podczas rozładunku pociąg wielokrotnie
porusza się do przodu i do tyłu,
więc typowa sekwencja może wyglądać tak.
W sterówce jest też przycisk,
który można nacisnąć tylko raz
i który zamyka pole siłowe
artefaktu na 10 sekund.
Sterówka jest malutka,
zaprojektowana dla robota.
Z twojego zespołu tylko Hedge się zmieści.
Członkowie ruchu oporu ustawili dźwig
nad torami, by wydobyć artefakt
jak tylko zostanie odsłonięty.
Sami zobaczą, kiedy obniżyć dźwig.
Ale jedynym sposobem,
by Hedge mógł określić pozycję pociągu
i odpowiednio zamknąć pole siłowe,
jest analiza procedury rozładunku,
bo wnętrze lokomotywy nie ma okien.
Hedge nie może sam się zaprogramować,
to Etyka musi mu powiedzieć, co ma robić.
Artefakt znajduje się
10 wagonów za dźwigiem
w momencie rozpoczęcia rozładunku.
Jakie polecenia Etyka ma wydać Hedgowi,
by nacisnął przycisk
we właściwym momencie?
Zatrzymaj film, by znaleźć rozwiązanie.
Oto wskazówka na początek.
Kluczem do rozwiązania tego problemu,
jak i wielu programistycznych wyzwań,
jest przetworzenie informacji tak,
by komputer mógł ją spożytkować.
Komputer nie wie, czym jest pociąg
- to niepotrzebne.
Może za to pracować ze zmiennymi.
Spróbuj stworzyć zmienną,
która śledzi pozycję pociągu.
Jak się zmieni w trakcie ruchu pociągu?
Zacznijmy od podzielenia problemu
na dwa cele.
Pierwszy to wiedzieć, gdzie będzie pociąg
po wykonaniu wszystkich instrukcji.
Drugi to nacisnąć przycisk,
gdy pociąg będzie we właściwej pozycji.
By osiągnąć pierwszy, wyobraźmy sobie,
że pociąg to duża oś liczbowa.
Zerem będzie wagon z artefaktem,
jedynką wagon przed nim i tak dalej.
To oznacza, że wagon numer 10
będzie pod dźwigiem w momencie startu.
Gdy pociąg porusza się o 1 wagon w prawo,
9 wagon jest pod dźwigiem.
Tak więc strzałka w prawo
może oznaczać "odejmij 1".
Kiedy pociąg porusza się w lewo,
10 wagon jest znowu pod dźwigiem,
czyli że strzałka w lewo to "dodaj 1".
Ustawmy zmienną pociągu na 10,
skoro to jest pozycja na starcie.
Za pomocą pętli można czytać
instrukcje jedną po drugiej,
po drodze dodając lub odejmując,
by śledzić, który wagon jest pod dźwigiem.
Z tak ustawioną zmienną
będziemy znać odległość
artefaktu od dźwigu.
Jak tylko zmienna dojdzie o 0,
Hedge powinien nacisnąć przycisk.
Oto, co się dzieje.
Etyka staje koło dźwigu, a Hedge pędzi,
by niepostrzeżenie wślizgnąć się
do silnika wagonu w chwili startu.
Jedzie 3 wagony do tyłu,
1 do przodu, kolejne 4 w tył.
Potem tyle naprzód,
że Etyka traci rachubę,
i znów w tył.
Gdy artefakt w końcu wjeżdża na pozycję,
Adila obniża dźwig, mając nadzieję,
że Etyka i Hedge nie popełnili błędu.
W ostatnim momencie pole siłowe
przygasa i opada.
Etyka zjeżdża w dół i uwalnia Węzeł mocy.
Gdy Etyka daje Hedge'owi
Węzeł na przechowanie,
dzieje się coś niezwykłego.
Artefakt budzi się do życia,
pokazując wizję z przeszłości.
Gdy wydobyto kryształ, nikt nie potrafił
uruchomić znajdującej się w nim konsoli.
Rząd zaczął szukać ludzi,
którzy mieli w tym pomóc,
jeden po drugim próbując swoich sił.
Etyka uwielbiała badać działanie
mechanizmów, więc się zgłosiła.
Po chwili przy konsoli coś kliknęło
i tak stworzyła swojego pierwszego robota.
Rząd natychmiast zatrudnił ją
jako głównego inżyniera robotyki.
Po roku jej produkty stosowano
w każdym aspekcie życia,
a kraj i jego ludzie odnosili sukcesy.
Nie musieli już harować
na polach i w fabrykach.
Wizja kończy się, a Hedge odkrywa,
że drugi artefakt znajduje się
na południowy wschód od nich,
w lesie 198.
Na szczęście jest to
następny przystanek pociągu,
któremu akurat wystarczy paliwa.
Etyka i Hedge zakradają się do wagonu
i znajdują kryjówkę
na czekającą ich długą podróż.