Читать «Вычислительное мышление: Метод решения сложных задач» онлайн - страница 55

Питер Макоуэн

Поскольку в щели 1 есть монета (М1 равно 1), то три карты И1 выкладываются на стол, а карты И2 — не выкладываются, потому что М2 равно 0. Соответственно, на карточном столе у нас три карты (рис. 46).

Можно количество карт (С), которое отправляется на стол. Оно вычисляется с помощью уравнения:

С = ((М1 И1) + (М2 И2))

В нашем примере получается (1 3 + 0 4) = (3 + 0) = 3. Из операции умножения следует, что значения М1 и М2 определяют, будут ли сложены соответствующие суммы. Если М равно 0, то значение И не учитывается в сумме, а если оно равно 1, то значение остается.

Таким образом, сумма С для нашего мозга равна 3, и это меньше, чем Д, равное 5 (3 5), поэтому карта, помеченная как 0, помещается в зону выхода: «Двух монет НЕТ». Это выход, который мы хотим получить, когда в игре только одна монета. В этом случае мы применяем правило П1 и ничего не делаем.

Теперь попробуем другой вариант. Все карты возвращаются туда, откуда они взяты. Однако на этот раз давайте поместим по монете в обе щели: (М1 М2) = (1 1). Теперь карты обоих игроков идут на стол, поскольку в обеих щелях есть монеты. И остается семь карт: (1 3 + 1 4) = 7.

Теперь 7 5, и на выходе 1, как нам и нужно: «Есть две монеты». И снова мы следуем правилу П1 и не делаем ничего.

Более того, если мы попробуем все четыре комбинации монет в щелях, то каждая из них даст правильный выход. Ура! Обучения не потребовалось. Но в данном случае нам повезло. Нам случайно сдали столько карт (три, четыре и пять), что машина сработала правильно. С таким количеством карт она всегда может правильно сказать, присутствуют две монеты или нет. Но что будет, если не повезет? Тогда придется играть по-другому и учиться необходимому поведению. Давайте рассмотрим другую игру.

Пример игры 2. Нужно играть

Мы снова начинаем с того, что произвольно сдаем игрокам и дому небольшое количество карт. На этот раз у игрока 1 на столе шесть карт, у игрока 2 — четыре карты, и у дома тоже четыре карты.

Ситуация, когда ни в одной щели нет монет, а значит, М1 и М2 равны 0, легкая. Карты не перемещаются, для дома мы получаем 0 4, и на выходе 0: «Двух монет НЕТ». Условие (М1 М2) = (0 0) корректно. Это показано на рис. 47.

Если монета есть только в щели 2, значит, (М1 М2) = (0 1). Тогда карты игрока 2 идут вперед. Игрок 1 остается на месте, и на стол попадают четыре карты. На выходе мы имеем 0: «Двух монет НЕТ». Помните, что для получения 1 на выходе нам нужно, чтобы сумма карт на столе была больше (а не просто равна) Д. То есть ничего не меняется, и мы снова следуем правилу П1. Условие (М1 М2) = (0 1) корректно.

Теперь поместите одну монету в щель М1 и ни одной — в щель М2. И снова мы хотим получить на выходе 0, однако посмотрите на карты! На карточном столе у нас 6 4, а значит, на выходе 1, и это неверно! Нужно применить правило П2. В нем говорится:

« сыгранная партия дает на выходе 1, но мы хотели получить 0, чтобы это соответствовало таблице выходов,