Код дружбы (ЛП) - Дейч Стейсия. Страница 18

–Что это? – спросила София.

–Мы с папой использовали этот сайт, когда занимались программированием, – ответила Эрин. – Мы можем ввести сюда данные, а затем скопировать и вставить ссылку в браузер, и оно сработает, какую бы программу мы не ввели.

–Но здесь же нет совсем ничего! – наклонилась к экрану Майя. – Только квадрат. Как она сработает?

–Это простой текстовый редактор, – сказала Эрин. – Вы не можете использовать обычные текстовые процессоры для кодирования, потому что у них есть параметры форматирования, такие как изменение шрифтов и прочего, которые мешали бы коду.

Мы все посмотрели на Эрин в растерянности. Она начала набирать что-то на клавиатуре, и в квадрате тут же появились буквы и скобки в машинописном варианте.

–Видите? В такой программе легче выполнить кодирование. Ничего не мешает, так что вы можете сказать ему, что именно вы хотите, чтобы он сделал.

–То есть, если мы напишем код для программы здесь, – подвела я итог, пытаясь понять, что она только что сказала, – то мы, увидим, как она здесь оживет?

Эрин рассмеялась.

–Я не уверена, что «оживет» это – верное слово, но, да, если мы введем здесь данные какой-нибудь игры, мы сможем играть в нее онлайн. И предложить еще кому-нибудь поиграть. Мы можем ввести даже свой пароль, чтобы защитить ее.

Я задумалась об этом на секундочку.

–Хорошо, даже если мы придумаем как закодировать что-нибудь, как мы сможем дать это другим попробовать, если мы даже не знаем, кого подозревать?

–Хм…– задумалась Эрин, в это время как ее пальцы гуляли по клавиатуре. Стало так тихо, что, клянусь, можно было услышать, как все думают.

Алекс просунул свою голову в дверь.

–Девчонки, как идут дела? Вы уже поймали виновника?

–Уууф, мы не знаем, что делать, – сказала я ему, с грохотом плюхаясь на кровать.

Я думаю, он понял нашу растерянность.

–Может я смогу помочь. Что вы знаете о кодировании?

–Мы знаем о вводе/выводе и условных, – ответила я.

–Про переменные, – добавила Майя.

–И про циклы, – закончила София.

Алекс задумался и предложил:

–Вы можете создать игры в вопросы. Спросите про то, что только тот, кто оставил записки, может знать.

–Да, это была идея! – Кто бы ни оставил записку, он должен был прийти на площадку перед тем, как оставить записку, – размышляла я, чувствуя, как внутри меня все бурлит от возбуждения. – И он должен был прийти перед нами, чтобы положить записку под лавочку.

–И тот, кто послал Люси на спортивную площадку, должен был знать, что я буду там, – добавила София.

–И он знал, чего не хватает на моем платье, – вставила Майя.

–И все записки были обнаружены на моем шкафчике, поэтому этот кто-то должен иметь пропуск в среднюю школу, – закончила я.

Я почувствовала, что мы близки к разгадке.

–Но даже если мы и создадим такую игру, как мы заставим людей играть в нее? И кому нам ее предлагать? – размышляла я. – Алекс, кроме тебя и Эрин, у нас не было никаких подозреваемых, если честно.

Алекс задумался опять.

–Кто бы ни оставил записки, он должен что-то знать о программировании. Где могут находиться дети, знающие про переменные, входы/выходы, условные и про циклы?

–Это не может быть клубом программирования, потому что мы там еще ничего не изучили, – ответила я, думая о том, кто еще в школе может знать о кодировании.

–Подожди минутку, – сказала Эрин, – может быть в клубе есть кто-то, такой как я, про кого мы не знаем, что он разбирается в этом. Тот, кто не проявил себя на первом занятии.

–Это возможно, – допустила Майя, садясь ровнее. – И каждый видел, какой расстроенной ты была на занятии в понедельник, поэтому любой из клуба мог подбрасывать тебе записки.

–Отличная мысль! – вставил Алекс. – Начните с детей в клубе. Я обещаю вам, если вы напишете такую игру, Миссис Кларк будет так впечатлена, что разрешит каждому поиграть в нее. – Он подмигнул нам. – Поверьте мне, она любит, когда студенты проявляют свои способности. (Он уж знал об этом наверняка).

–Но что, если этот кто-то не из клуба, – начала я…

–Не переживай по поводу этого, Лу, – сказал Алекс. – К выражению со словом «если», прилагается слово «в другом случае». – Он перешел на язык программирования. – Если эта игра сработает, тогда вы найдете разгадку, в другом случае, мы попробуем что-нибудь еще.

Мы рассмеялись. У нас теперь был план!

***

Майя, София, Эрин и я составили список из десяти вопросов, на которые мог ответить только таинственный кодер, и Алекс показал нам, как использовать концепции кодирования, чтобы мы научились писать программу.

Мы начали с условных – если что-то случается, то компьютер как-то на это отвечает. Алекс предложил, чтобы мы обрисовали нашу программу на бумаге сначала в формате под названием псевдокод–он сказал, что это было подробное описание того, что компьютерная программа должна делать, но на нормальном языке, вместо языка программирования.

У Эрин появилась идея.

–Если бы мы были на школьной площадке, – предложила она, – мы бы могли сказать: «Нажмите букву Y», и «Y» будет тем ключом, который может быть сохранен в виде переменной. Правильно, Алекс?

–Именно!– сказал он.

Алекс помог нам создать анимацию, которая бы выбила игрока из программы, если бы он не ответил «да», так как мы знали, что это не тот человек, которого мы искали. Майя нарисовала пять снимков взрыва ракеты, и Алекс показал нам, как использовать петлю для цикла через фотографии. Затем мы использовали другой цикл, чтобы сделать наш собственный GIF! Эта игра обещала быть очень крутой.

***

Когда мы закончили первый вопрос, псевдокод выглядел так:

вопрос_1 = «Вы были на школьной площадке во вторник?»;

покажите (вопрос_1);

пока (вопросы_остаются) {

если (нажать_кнопку_y) {

покажите_следующий_вопрос ( );

}

В другом случае {

покажите_ракеты_взрыв ( );

конец_игры ( );

}

}

Мы придумали еще больше вопросов, и затем ввели их. Я не могла поверить, что все эти скобки и элементы форматирования, которые мне показались тогда настолько странными, на самом деле имеют смысл! Мы выяснили, что у «если-тогда» утверждений иногда бывают «другие» варианты, и что-то «другое» происходит, если условие не верно. Ракета была частью «другого». Так что если игрок нажал любую клавишу, кроме буквы Y, то появилась ракета GIF, которую мы сделали.

Для создания игры нам потребовался почти весь день. К тому времени, как мы закончили, мы очень сильно устали. Я очень надеялась, что наш план сработает так, как мы думали!

Глава 13

С понедельник после обеда, наконец, пришло время второго занятия в код-клубе. Поверить себе не могу, что прошла всего одна неделя, и так много произошло за это время.

Когда я шла в кабинет Миссис Кларк, мне пришла смс-ка от Анджали.

«Эрин успешно прошла прослушивание сегодня!!! СПАСИБО!!!»

Я усмехнулась. И все-таки мой план сработал. Я широко открыла дверь в кабинет Миссис Кларк. София, Майя и Эрин были уже там. Мы договорились прийти в класс пораньше, чтобы поговорить с Миссис Кларк о нашей игре до того, как в класс придут другие дети. Я подошла к девочкам и положила свой рюкзак. Затем мы все вместе подошли к миссис Кларк, которая в этот момент сидела за своим столом.

–Добрый день, миссис Кларк!

–Добрый день, девочки! – сказала она, отрываясь от компьютера. – Не рановато ли вы пришли?

–Упс, мы приготовили сюрприз, – сказала я ей. Девчонки переглядывались друг с другом возбужденно.

–Правда? – она внимательно посмотрела на нас через свои очки для чтения. – Какой сюрприз?

–Мы придумали компьютерную игру и хотим ее вам показать. На самом деле мы надеемся, что каждый в нашем клубе сможет поиграть в нее, – объяснила я. Я надеялась, что Алекс был прав, и она позволит нам показать ее всей группе.