Текст книги "Код дружбы (ЛП)"
Автор книги: Стейсия Дейч
сообщить о нарушении
Текущая страница: 5 (всего у книги 6 страниц)
София вмешалась:
–Люси и я следовали указаниям и били по мячам какое-то время, но так и не поняли, что это может значить.
Я указала на последнюю записку.
–Эта касается одежды, поэтому мы пошли в магазин «Одевайся! Впечатляй» и выполнили его на основании платья Майи. – Я показала ей копию заполненной записки, которую сделала на случай, если оригинал со шкафчика кто-то заберет.
–Но мы не знаем, как это связано с программированием, – добавила Майя.
Эрин взглянула на эти две записки и взяла листок бумаги. Мы все окружили ее вокруг кухонной стойки. Она написала четыре слова:
ввод/вывод;
условия;
циклы
переменные показатели
Майя посмотрела с подозрением и спросила:
–Ты уверена, что не писала эти записки?
–Я обещаю, это была не я. Здесь вы выполнили задание на вводвывод, не так ли? – она указала на первый лист.
–Да, – ответила я. – Компьютеру нужно давать четкие указания, потому что он выполняет только то, что задано. Так же как у миссис Кларк не получилось бы приготовить сэндвич без точных указаний, так же как и ты не смогла бы пройти все препятствия, если бы я не говорила тебе точно, что делать.
–Точно. – Эрин подняла указательный палец. – Также в парке мы познакомились с понятием «условия», Люси.
Я положила первые две записки на стойку к другим.
–А что означают эти закорючки и скобки? – спросила Майя, осматривая все записки.
–Закорючки называются фигурными скобками, – объяснила Эрин.– Они являются важной частью отдельного языка программирования. Они помогают компьютеру понимать твои команды. Иногда команда не работает, потому что может отсутствовать одна скобка. И у каждого языка программирования есть свой синтаксис.
–Синтаксис? – переспросила я.
–Да, это – система, при помощи которого слова и фраза соединяются, чтобы образовать язык, – объяснила Эрин. – Все языки, такие как английский или испанский, имеют свою систему синтаксиса, также так и язык программирования.
Сейчас уже мне становилось понятнее. Эрин указала на первую записку:
Если (ты_хочешь_научиться_программированию) {
тогда выполняй_все_мои_ рекомендации () }
–Эти линии в программировании называются условный оператор или условие, – объяснила Эрин. – «Если» задается первое условие, «тогда» компьютером будут выполнены действия.
Майя посмотрела, непонимая.
–Посмотри, в первой линии в скобках находится условие для утверждения «если», – продолжила Эрин. «Если» ты хочешь изучить программирование, «тогда» выполняй мои рекомендации. Во второй линии указано назначение или инструкция – и скобки указывают компьютеру, как следовать программе.
–Ой, я поняла. Первая записка была моим первым условием или условным оператором, – сказала я. – Во второй тоже были условия. – Я указала на записку, касающуюся школьной площадки.
Если (ты_согласна_ на_мои_условия) {
тогда бери_своего_друга();
иди_на_школьную_ площадку()
{
Если(ты_ придешь_ на _площадку()
тогда загляни_ под_скамейки();
найди_ большой_красный_конверт()
{
если(ты_найдешь_ конверт) {
тогда доверяй _ мне («ты научишься программированию»)
}
–Точно, – сказала Эрин.
–Хорошо, сейчас я понимаю условия, – сказала София. – А как насчет спортивного задания? – Она указала на него. – Как оно связано с программированием?
Поскольку (там_ остались_ мячики){
Ударяй_ мячики();
}
–Циклы, – ответила Эрин. – Циклы – это действия, которые ты выполняешь, пока условие остается верным.
–Софтбол, – сказала София, проводя параллели. – Когда у тебя уже не останется мячей, – подвела она итог, – ты не сможешь продолжать играть.
–Только тогда, – ответила Эрин, – в другом случае игра никогда не прекратится. Ты останешься в замкнутом цикле.
–Ха! Да, мы на самом деле устали бросать и ловить мячи, – сказала я, потирая свою подающую руку, она до сих болела.
–Да, – добавила Эрин, наклоняясь вниз к стойке. – Потому что мы – люди. Но компьютеры никогда не устают от выполнения одних и тех же действий снова и снова… даже если это миллионы раз. Вот почему циклы могут быть такими огромными.
–А что насчет записки с платьем? – спросила Майя.
Целое_число_пуговиц=1 2 3 4 5 6 7 8;
Строка_пуговица_набери=«фиолетовая жемчужина»;
У логического_есть рукава=правда неправда;
Строка рукав_напечатай=«лепесток»;
Строка воротник_напечатай=«китайский»;
Строка шнурок_напечатай=«старинная китайская из жаккарда»;
Мы прочитали нашу заполненную записку.
–Вы выполнили все правильно. Здесь у вас появились переменные показатели, они используются для того, чтобы запоминать информацию, – сказала Эрин, указывая на ответы. – Вам нужны были разные детали к разным частям платья Майи, не так ли? Поэтому если представить себе, что это была компьютерная программа, то вы задавали ей, что нужно добавить к платью.
–То есть, какую пуговицу, шнурок, или воротник добавить? – сказала Майя, расширяя глаза.
–Точно, – ответила Эрин.
Теперь все приобретало смысл, но в этой записке все еще оставалось много непонятного, что звучало для меня полной полным бредом.
–Что означает «целое число»? – спросила я, указывая на начало записки.
–В кодировании иногда есть числа с десятичными цифрами, но это не будет работать здесь, потому что вы не можете использовать половину кнопки.
Мы хихикнули.
–А что такое логическое?
–«Логическое» – это просто: это вид данных, на котором может быть только два варианта ответа: правда или неправда, – объяснила Эрин.
–То есть, платье может быть либо с рукавами, либо без, – сказала София.
–Угу, – ответила Эрин.
–А что значит «строка»? – вставила Майя.
–«Строка» – это тоже легко. Это слово для серии разных знаков, включающих в себя буквы, цифры, символы, знаки пунктуации.
–То есть, «лепесток» – это строка, а как насчет «Халверстон №99». Это тоже будет строкой, если в этом будет заключаться какой-либо смысл для компьютера? – спросила я.
–Да, переменные показатели включают в себя все виды типов данных, целые числа, логические, строки – все то, что вы, девчонки, выполнили в задании. – Ответила Эрин, указывая на наши вставки в записке.
Я не могла поверить, что все, что раньше казалось мне полным бредом, теперь приобретало смысл и становилось понятным.
–Эрин, посмотри, как сильно мы нуждаемся в тебе, не уходи из клуба, – попросила я, глядя на нее как можно жалостнее.
Эрин улыбнулась.
–Вы, девчонки, и сами справитесь. Я рассказала вам все, что знала.
Я почувствовала, что у меня не получится уговорить ее остаться в клубе, пока ей нужно было выбирать между театральным клубом и нашим. Но что если…
Среди таинственных записок был и флайер, приглашение на хакатон, поэтому я показала его девчонкам.
–Это что, еще одна записка? – спросила Эрин, наклоняясь.
–Нет. Это – флайер, который я хотела вам показать. – Я развернула листок.
София быстро посмотрела на него.
–Это то, что мы нашли в компьютерном магазине?
Я кивнула.
–Приглашаются все программисты, не пропустите шестичасовой хакатон, – прочитала громко Майя. – Что такое хакатон?
Я улыбнулась, стараясь не подать вида.
–Я узнала, что это такое. Это – соревнование программистов. Для участия нужно знать основы программирования, но с тобой Эрин, могу поспорить, мы знаем достаточно даже для победы. – Я указала на призовой фонд. – И ты сможешь купить книги по кулинарии.
–Ну, я не думаю, что мне еще нужны книги, – ответила Эрин, широким жестом указывая на коробки с надписью «книги», стоящие в кухне и гостиной.
–Тогда ты сможешь купить новые полки для своих книг, – предположила я.
Все засмеялись, даже Эрин улыбнулась мне.
–Извини, Люси, – сказала она. – Я не могу. Я очень хочу попробовать себя в театре и не хочу упускать свой шанс.
***
Мы пробовали уговорить Эрин в нашем клубе еще миллион раз, но все было похоже на бесконечный компьютерный цикл. Она продолжала повторять: «Пока я могу пойти в театр, я пойду в театр» снова и снова, отчего мы не расстроились, но и почувствовали себя разбитыми. В конце концов, мы пошли домой.
Тем вечером я постоянно думала про записки, особенно теперь, когда я поняла, что они означали. Мне было интересно, получу ли я еще одну. Но кто мог оставлять их? И все равно я не могла избавиться от мысли, что это был Алекс. Но то, что больше занимало мои мысли и расстраивало – это известие о том, что Эрин уходит из клуба. Мне казалось, что я знаю ее уже давно, и мне нравилось тусоваться с ней, и я могла сказать с уверенностью, что и Майе, и Софии тоже. Вдобавок, и это бросалось в глаза, что Эрин нравилось рассказывать о программировании. Если бы только нашлась возможность ей посещать и наш клуб и театральный…
Глава 11
На следующее утро я проснулась с готовым планом. Первое, что я сделала, написала письмо Анджали. Потом Майе и Софии, и потом я отправила сообщение Эрин.
Затем я спустилась вниз и решила взять в оборот Алекса, который как раз в это время доедал свою кашу на кухне. Мы с ним были дома вдвоем, потому что наши родители были на конференции от маминой работы, которая продолжалась все выходные.
–Сегодня воскресенье, – сказал Алекс, который все еще был в пижаме. – Не доставай меня.
Я села рядом с ним на стул.
–Алекс, сегодня тебе выпал шанс показать, каким ты можешь быть классным.
–Слишком поздно, – ухмыльнулся Алекс. – У меня есть все, что мне нужно.
–Поверь мне, тебе нужно больше, – сказала я, закатывая глаза. – Ко мне придут мои подружки, и нам нужна будет твоя помощь. – Я посмотрела на него строго. – По-настоящему. Не свои пакости в стиле спрятать-от-меня-всю-туалетную-бумагу-или-налить-масло-в-пузырек-с-жидким-мылом. Это – пустые шутки.
–Зато смешные,– сказал Алекс с ухмылкой.
–Пожалуйста, – сказала я серьезно и добавила: – Нам нужна твоя помощь в программировании.
Он задумался на секунду и ответил:
–Хорошо.
–Правда? – спросила я; я думала, что мне понадобится больше убедительности.
–Конечно. Сегодня у меня нет работы, – ответил он. – И я совсем не против помогать моей сестренке время от времени. – Он поднял брови. – Но я сказал тебе, что не могу помочь с приложением.
–Нет, дело не в этом,–сказала я. – Это совсем другое.
–Хорошо, хорошо, я помогу, – сказал он, поедая свою кашу.
Я смотрела на его вонючую старую пижаму.
–Потрясающе, спасибо! Но можешь что-нибудь надеть что-нибудь почище... до того, как мои подружки придут сюда?
–Да, ваше величество, – сказал он, поддельно закатывая глаза, но потом произошло второе чудо дня – он пошел к себе в комнату, чтобы переодеться.
***
Майя приехала первой. София пришла через минуту.
–Так... – Майя начала, – и что ты придумала?
На ней были фиолетовые шорты, полосатая рубашка и прикольные носки с сердечками. Мне не хотелось пойти переодеться, чтобы снять свои потрепанные синие шорты и свитер, но, увидев, как София была тоже в спортивных шортах, я решила остаться так. Теперь, когда я узнала Майю, я знала, что она не будет нас осуждать.
–Эрин тоже придет? – София спросила. – Она не входила в твою рассылку.
–Пока нет, – сказала я, проверяя телефон. – Пойдем наверх! Я хочу вам кое-что показать.
София и Майя последовали за мной в мою комнату. София плюхнулась на пол, а мы с Майей сели на кровать. Я схватила ноутбук, посмотрела на экран и скрестила пальцы. «Пожалуйста, пусть Эрин ответит», – я подумала про себя.
–Спорим, вы хотите знать, почему я попросила вас прийти сегодня утром, – сказала я со странной формальностью.
София и Майя посмотрели на меня в недоумении.
–Ты узнала, кто оставлял записки? – София спросила.
–Нет, пока нет. – Я снова посмотрела на свой компьютер.
София с тревогой посмотрела на меня.
–Что происходит, Люси?
–Да, что происходит? – Майя спросила.
Наконец, я больше не смогла удержать его.
–Ладно, вы тоже хотите, Эрин была в клубе программистов с нами, верно? – сказала я, пытаясь сдержать волнение.
–Ну, да, но она хочет пойти в театральный кружок, – София сказала, напоминая мне об очевидном.
Я посмотрела свой ноутбук и коварно улыбнулась.
–Погоди, ты же не собираешься испортить ей все, Люси? – Майя встала обеспокоенно.
–Конечно, нет! – сказала я. – У меня появилась идея, как она может совмещать наш и театральный, если она захочет. – И повернула ноутбук к ним.
–Я послала Эрин три письма этим утром. Я показала им первое:
Если (ты_хочешь_быть_актрисой) {
ТогдаПоговори_с_Анджали();
}
–Мне нравится, – сказала Майя, – ты использовала условное утверждение! Но как разговор с Анджали может изменить ситуацию?
Я улыбнулась. Я гордилась своей идеей и надеялась, что она сработает.
–Анджали не ходит в театральный клуб, – объяснила я. – Она в киноклубе и сказала мне, что они пишут свой собственный фильм и планируют представить его на студенческих кинофестивалях. Дело в том, что им нужна актриса, которая умеет петь. – Я остановилась, чтобы дать им возможность переварить все сказанное.
Я увидела, как глаза Софии вспыхнули. Она поняла, куда я клоню.
–И самое главное: киноклуб встречается одновременно с клубом программистов по понедельникам, но они используют это время для производственных встреч, так сказала мне Анджали вчера вечером. Снимать они будут в другие дни.
Я опять остановились, чтобы до них и это дошло.
–Поэтому… Эрин сможет сниматься в фильме всю неделю, и ходить в наш клуб по понедельникам!
–Мммм… это и вправду сможет сработать, – сказала София.
Майя похлопала меня по плечу.
–Классно придумала, Люси.
–Спасибо, но есть еще кое-что: Анджали сказала, что они должны устроить Эрин прослушивание.
–Ты сказала, что она хорошо имитирует разные голоса, а ты слышала, как она поет? Также хорошо? – спросила Майя.
И тут почувствовала себя гением.
–Прошлым вечером я провела расследование. Помните, как Эрин говорила, что она принимала участие в шоу талантов в своей прошлой школе? Я нашла видео ее выступления. Ее мама выложила в интернете. – Я усмехнулась. – Иногда полезно иметь надоедливую мамочку.
–Вау, Эрин еще и танцевать может, – сказала София. – Могу поспорить, что она точно получит роль в этом фильме.
–Если она захочет, я думаю, она будет очаровательной, – подытожила я. – И сейчас мы должны увидеть, последует ли она тому, что я написала ей.
София уже читала содержимое моего второго письма на экране:
–Ой, это так забавно. Ты создала цикл.
Я написала:
Пока (остаются_песни) {
Напиши_программирование();
}
–Я хотела, чтобы она знала, что она может и петь и программировать, – объяснила я.
Майя улыбнулась, глядя на меня.
–Это блестяще.
–Но она еще не ответила, – сказала я. – Я думала, что к этому времени она уже что-нибудь ответит.
София наклонилась к экрану.
–А о чем твое третье письмо?
Я улыбнулась. Оно было самым важным.
Строка друг_номер1 = «Майя»;
Строка друг_номер2 = «София»;
Строка друг_номер3 = «Люси»;
Строка друг_номер4 = «_____»;
–Подожди, – София еще раз прочитала письмо на компьютере. – Постой, что-то тут не так.
–Что? – Я перечитала письмо несколько раз. – Я сделала строку переменных правильно, не так ли? Переменная – это «друг», а виды переменных – это наши имена.
–Ты все правильно написала, – сказала София, – но, Люси, ты не отправила, ни одно из писем.
–О, нет! – я чувствовала себя такой умной, что забыла выполнить последнее и самое важное действие.
Я нажала кнопку «отправить». Затем мы все уставились на экран.
Прошла одна минута. Затем вторая (по крайне мере, нам так казалось)…
Наконец мы получили входящее письмо. В нем было написано:
Строка друг_номер_3 = «Эрин»;
–Вот это да, у нас все получилось! – воскликнула я.
– Круто! – воскликнула София. – Дай пять!
Майя тоже присоединилась.
Мы убедили Эрин остаться в компьютерном клубе и организовали ей выступление! Я напечатала Эрин письмо, что мы все собрались у меня дома, и предложила ей присоединиться. Почти сразу же я получила ответ: «Уже иду!»
Когда пришла Эрин, Алекс открыл ей дверь и проводил ее наверх. Мне было приятно видеть, что он переоделся в чистую майку и шорты.
Мы все окружили Эрин.
–Мы так рады, что ты пришла! – восхитилась я, крепко обнимая ее так, что она чуть не уронила поднос с домашними печеньями, которые принесла с собой.
–Девчонки в средней школе становятся такими странными…– пробормотал Алекс, направляясь по коридору.
–Стоп. Подожди! – Я схватила его за руку. – Алекс, постой!
–Да, ты о чем-то меня просила. Пока никто не начинает меня обнимать, – сказал Алекс, – и я тоже хочу печеньку.
–Договорились. Итак, я начала эти странные таинственные записки в школе, – начала я свой рассказ ему. Сейчас мне уже хотелось верить, что он имеет к ним никакого отношения. Я рассказала ему обо всех записках.
–Подожди минутку, ты думала, что это я оставлял тебе их все это время? – он переспросил, сильно удивившись.
–Ну да….
–И сейчас после того, как ты меня несправедливо обвинила, ты еще просишь моей помощи?
Я была уверена, что он не собирается сдаваться так легко.
–Ну, хватит, Алекс. Сейчас мы уже знаем, что такое программирование; нам просто интересно узнать, кто написал их.
Алекс задумался на минутку. Мне показалось, что он был заинтригован. Наконец, он предположил:
–Почему бы вам не использовать какую-нибудь программу, чтобы поймать его?
Я посмотрела на других, растягиваясь в улыбке. Это действительно было классной идеей.
Глава 12
Проблема заключалась в том, что наши знания программирования, хоть и в группе, были очень ограничены. Алекс быстро начал накидывать нам идеи, но потом ему позвонила подружка, и он ушел с ней разговаривать. Таким образом, мы не ушли далеко.
–Хорошо, это – классная идея, – сказала София, откусывая кусочек печенья. – Но как мы сможем поймать того, кто оставляет записки?
–Я использовала язык программирования, чтобы поговорить с Эрин, – сказала я, размышляя над проблемой. – И уверена, что мы все равно сможем что-нибудь придумать.
Эрин завязала свои волосы в пучок и убрала свободные пряди за уши.
–Может быть нам создать программу, используя то, что мы уже знаем: ввод/вывод; условные, циклы и переменные.
–Мы можем попробовать, но как это поможет нам найти преступника? – спросила я.
Эрин задумалась.
–Хм…. Я не знаю.
–Может, это прозвучит нелепо, – сказала Майя, – но до сих пор мы, ни разу не садились за компьютер и не пробовали применить то, что мы узнали. Люси, конечно, отправила письма Эрин на языке программирования, но это совсем другое. Как работает программирование на деле? Может быть, нам нужна какая-то специальная программа?
–Я тоже задумывалась на эту тему, – поддакнула София.
–Можно я посмотрю? – попросила Эрин, указывая на мой ноутбук. Мы все собрались вокруг нее. Она зашла в интернет и что-то набрала в строке поиска. На экране появился большой квадрат с черными очертаниями.
–Что это? – спросила София.
–Мы с папой использовали этот сайт, когда занимались программированием, – ответила Эрин. – Мы можем ввести сюда данные, а затем скопировать и вставить ссылку в браузер, и оно сработает, какую бы программу мы не ввели.
–Но здесь же нет совсем ничего! – наклонилась к экрану Майя. – Только квадрат. Как она сработает?
–Это простой текстовый редактор, – сказала Эрин. – Вы не можете использовать обычные текстовые процессоры для кодирования, потому что у них есть параметры форматирования, такие как изменение шрифтов и прочего, которые мешали бы коду.
Мы все посмотрели на Эрин в растерянности. Она начала набирать что-то на клавиатуре, и в квадрате тут же появились буквы и скобки в машинописном варианте.
–Видите? В такой программе легче выполнить кодирование. Ничего не мешает, так что вы можете сказать ему, что именно вы хотите, чтобы он сделал.
–То есть, если мы напишем код для программы здесь, – подвела я итог, пытаясь понять, что она только что сказала, – то мы, увидим, как она здесь оживет?
Эрин рассмеялась.
–Я не уверена, что «оживет» это – верное слово, но, да, если мы введем здесь данные какой-нибудь игры, мы сможем играть в нее онлайн. И предложить еще кому-нибудь поиграть. Мы можем ввести даже свой пароль, чтобы защитить ее.
Я задумалась об этом на секундочку.
–Хорошо, даже если мы придумаем как закодировать что-нибудь, как мы сможем дать это другим попробовать, если мы даже не знаем, кого подозревать?
–Хм…– задумалась Эрин, в это время как ее пальцы гуляли по клавиатуре. Стало так тихо, что, клянусь, можно было услышать, как все думают.
Алекс просунул свою голову в дверь.
–Девчонки, как идут дела? Вы уже поймали виновника?
–Уууф, мы не знаем, что делать, – сказала я ему, с грохотом плюхаясь на кровать.
Я думаю, он понял нашу растерянность.
–Может я смогу помочь. Что вы знаете о кодировании?
–Мы знаем о вводе/выводе и условных, – ответила я.
–Про переменные, – добавила Майя.
–И про циклы, – закончила София.
Алекс задумался и предложил:
–Вы можете создать игры в вопросы. Спросите про то, что только тот, кто оставил записки, может знать.
–Да, это была идея! – Кто бы ни оставил записку, он должен был прийти на площадку перед тем, как оставить записку, – размышляла я, чувствуя, как внутри меня все бурлит от возбуждения. – И он должен был прийти перед нами, чтобы положить записку под лавочку.
–И тот, кто послал Люси на спортивную площадку, должен был знать, что я буду там, – добавила София.
–И он знал, чего не хватает на моем платье, – вставила Майя.
–И все записки были обнаружены на моем шкафчике, поэтому этот кто-то должен иметь пропуск в среднюю школу, – закончила я.
Я почувствовала, что мы близки к разгадке.
–Но даже если мы и создадим такую игру, как мы заставим людей играть в нее? И кому нам ее предлагать? – размышляла я. – Алекс, кроме тебя и Эрин, у нас не было никаких подозреваемых, если честно.
Алекс задумался опять.
–Кто бы ни оставил записки, он должен что-то знать о программировании. Где могут находиться дети, знающие про переменные, входы/выходы, условные и про циклы?
–Это не может быть клубом программирования, потому что мы там еще ничего не изучили, – ответила я, думая о том, кто еще в школе может знать о кодировании.
–Подожди минутку, – сказала Эрин, – может быть в клубе есть кто-то, такой как я, про кого мы не знаем, что он разбирается в этом. Тот, кто не проявил себя на первом занятии.
–Это возможно, – допустила Майя, садясь ровнее. – И каждый видел, какой расстроенной ты была на занятии в понедельник, поэтому любой из клуба мог подбрасывать тебе записки.
–Отличная мысль! – вставил Алекс. – Начните с детей в клубе. Я обещаю вам, если вы напишете такую игру, Миссис Кларк будет так впечатлена, что разрешит каждому поиграть в нее. – Он подмигнул нам. – Поверьте мне, она любит, когда студенты проявляют свои способности. (Он уж знал об этом наверняка).
–Но что, если этот кто-то не из клуба, – начала я…
–Не переживай по поводу этого, Лу, – сказал Алекс. – К выражению со словом «если», прилагается слово «в другом случае». – Он перешел на язык программирования. – Если эта игра сработает, тогда вы найдете разгадку, в другом случае, мы попробуем что-нибудь еще.
Мы рассмеялись. У нас теперь был план!
***
Майя, София, Эрин и я составили список из десяти вопросов, на которые мог ответить только таинственный кодер, и Алекс показал нам, как использовать концепции кодирования, чтобы мы научились писать программу.
Мы начали с условных – если что-то случается, то компьютер как-то на это отвечает. Алекс предложил, чтобы мы обрисовали нашу программу на бумаге сначала в формате под названием псевдокод–он сказал, что это было подробное описание того, что компьютерная программа должна делать, но на нормальном языке, вместо языка программирования.
У Эрин появилась идея.
–Если бы мы были на школьной площадке, – предложила она, – мы бы могли сказать: «Нажмите букву Y», и «Y» будет тем ключом, который может быть сохранен в виде переменной. Правильно, Алекс?
–Именно!– сказал он.
Алекс помог нам создать анимацию, которая бы выбила игрока из программы, если бы он не ответил «да», так как мы знали, что это не тот человек, которого мы искали. Майя нарисовала пять снимков взрыва ракеты, и Алекс показал нам, как использовать петлю для цикла через фотографии. Затем мы использовали другой цикл, чтобы сделать наш собственный GIF! Эта игра обещала быть очень крутой.
***
Когда мы закончили первый вопрос, псевдокод выглядел так:
вопрос_1 = «Вы были на школьной площадке во вторник?»;
покажите (вопрос_1);
пока (вопросы_остаются) {
если (нажать_кнопку_y) {
покажите_следующий_вопрос ( );
}
В другом случае {
покажите_ракеты_взрыв ( );
конец_игры ( );
}
}
Мы придумали еще больше вопросов, и затем ввели их. Я не могла поверить, что все эти скобки и элементы форматирования, которые мне показались тогда настолько странными, на самом деле имеют смысл! Мы выяснили, что у «если-тогда» утверждений иногда бывают «другие» варианты, и что-то «другое» происходит, если условие не верно. Ракета была частью «другого». Так что если игрок нажал любую клавишу, кроме буквы Y, то появилась ракета GIF, которую мы сделали.
Для создания игры нам потребовался почти весь день. К тому времени, как мы закончили, мы очень сильно устали. Я очень надеялась, что наш план сработает так, как мы думали!
Глава 13
С понедельник после обеда, наконец, пришло время второго занятия в код-клубе. Поверить себе не могу, что прошла всего одна неделя, и так много произошло за это время.
Когда я шла в кабинет Миссис Кларк, мне пришла смс-ка от Анджали.
«Эрин успешно прошла прослушивание сегодня!!! СПАСИБО!!!»
Я усмехнулась. И все-таки мой план сработал. Я широко открыла дверь в кабинет Миссис Кларк. София, Майя и Эрин были уже там. Мы договорились прийти в класс пораньше, чтобы поговорить с Миссис Кларк о нашей игре до того, как в класс придут другие дети. Я подошла к девочкам и положила свой рюкзак. Затем мы все вместе подошли к миссис Кларк, которая в этот момент сидела за своим столом.
–Добрый день, миссис Кларк!
–Добрый день, девочки! – сказала она, отрываясь от компьютера. – Не рановато ли вы пришли?
–Упс, мы приготовили сюрприз, – сказала я ей. Девчонки переглядывались друг с другом возбужденно.
–Правда? – она внимательно посмотрела на нас через свои очки для чтения. – Какой сюрприз?
–Мы придумали компьютерную игру и хотим ее вам показать. На самом деле мы надеемся, что каждый в нашем клубе сможет поиграть в нее, – объяснила я. Я надеялась, что Алекс был прав, и она позволит нам показать ее всей группе.
–Игра с использование кодирования? – спросила учительница, снимая свои очки и кладя их на стол. – Подожди секунду – Люси, не ты ли жаловалась на прошлой неделе, что занятия в клубе продвигаются очень медленно?
–Ну…– я пробормотала. – Мы сами догадались до некоторых вещей. – Мы переглянулись загадочно.
–Неужели? – Могу сказать, что она выглядела заинтригованной. – Расскажите мне, как вы смогли сделать свою игру?
–На прошлой неделе мы получили несколько уроков по программированию, – сказала я, не желая вдаваться в подробности, что мы придумали, чтобы поймать таинственного шифровальщика. – И применили эти знания. Алекс нам тоже помог, но только совсем чуть-чуть, – добавила я.
Она кивнула.
–Можно я посмотрю?
Мы выложили свою игру на сайте Алекса, и придумали ей пароль, поэтому я дала учительнице ссылку и кодовое слово, и она открыла ее на своем компьютере.
–Я вижу, – сказала она, улыбаясь, – то игра вопросов и ответов. Молодцы!
Она согласилась дать всем ребятам из клуба поиграть в эту игру. Мы скрестили пальцы в надежде, что все прояснится. К этому времени в классе уже начали собираться дети.
–Итак, начнем, – сказала миссис Кларк, хлопая в ладоши, чтобы все замолчали. – Сегодня у нас на занятии есть кое-что необычное для вас – игра!
По аудитории прошел звук удивления. Учительница дала каждому ссылку на сайт, пароль к нему и сказала, что все могут приступать. – Только будьте честными, отвечая на вопросы, или игра не запустится, – закончила она.
Мое сердце застучало, когда дети начали играть. Было заметно, что некоторые вылетели из нее очень быстро, судя по ракетам на их экране.
И первым среди них был Брэдли.
–Вот, блин, – он простонал, когда экран на его компьютере погас. Сэмми Купер дошел очень далеко, но все равно вылетел из игры тоже.
Закончилось все тем, что никто не смог ответить правильно на все одиннадцать вопросов. Я поняла, что нашего таинственного кодировщика не было в нашем клубе.
–Нам нужен еще один план, – прошептала я Эрин.
Мы начали перешептываться за низким столом в конце аудитории, когда миссис Кларк спросила:
–Можно я попробую вашу игру? Я вижу, что вы использовали в ней условные, переменные и закончили циклом, который заканчивался взлетом ракеты. Вы хорошо постарались!
Конечно, это никак не могло помочь нам найти таинственного мошенника, но я не возражала против того, чтобы Миссис Кларк попробовала нашу игру – мне казалось даже, что она будет гордиться нами, поняв, как многому мы научились.
Она начала играть, мы в это время наблюдали за ней. Она ответила на первый вопрос, нажав «Y». – Да, она была на школьной площадке в понедельник.
Да, она недавно использовала большой желтый конверт.
Да, у нее был черный шарф.
Да, она знала, что означает ввод/вывод.
Да, она знала, как написать условное утверждение.
Да, она знала, что такое цикл.
Да, она знала, где находится магазин «Одевайся! Впечатляй!»
Да, она недавно заходила туда.
Да, она видела незаконченное платье Майи.
Да, она понимала, то кое строки переменных.
Я не могла поверить в происходящее. Когда миссис Кларк закончила игру, на экране появились булькающие пузыри формате GIF с взрывающимся серпантином, которые вставили в игру Эрин и Алекс. Он падал до тех пор, пока миссис Кларк не нажала клавишу «escape”», чтобы выйти из игры.
–Миссис Кларк? – спросила я ошарашенно. – Это были вы?
Она улыбнулась нам.
–Да, Люси, это – я оставляла тебе записки, – призналась она и повернулась лицом к классу. – На самом деле я оставила записки трем из вас, каждому из разных групп, в начале недели. Мне очень интересно, что с ними случилось.
–Подождите, значит, не только мы решали задания по программированию на этой неделе? – спросила Майя с недоверием.
–Именно так, – ответила учительница.
Мы узнали, что группа Лейлы еще по первой записке поняла, от кого они были, и Миссис Кларк попросила держать это в секрете. Я должна отдать им должное за то, что поняли все так быстро и никому не рассказали.
Брэдли получил первую записку и сразу же потерял ее. И когда получил вторую, вообще не мог понять, что она означает и поэтому даже не показал ее своей группе.
–Девочки, – сказала миссис Кларк, поворачиваясь к нам, – я нахожусь под впечатлением от того, какую работу вы проделали. Почему бы вам не объяснить всем остальным, чему вы научились?
По очереди мы стали рассказывать, что такое ввод/вывод, циклы, условные, переменные. Мне было приятно поделиться тем, о чем мы узнали всего лишь за одну неделю.