Вычислительное мышление: Метод решения сложных задач | страница 40



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

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

Другие головоломки

Еще один простой «Улей»

На рис. 28 представлена новая головоломка. Посмотрите, можно ли использовать приведенные выше правила для ее решения. В процессе разгадывания вы найдете новые правила. Если ни одно из выведенных ранее правил не подойдет, возможно, стоит вернуться к исходным. Помните, что по второму правилу два одинаковых числа не могут находиться рядом. Ответ приведен в конце главы.



Головоломка посложнее

На рис. 29 показана еще одна головоломка, значительно больше и сложнее. Решая ее, выводите новые правила — те, что пригодятся при решении этой головоломки, и те, что могут пригодиться в будущем.



СОВЕТ. Когда будете искать новое правило, обратите внимание на то, что происходит, когда области из трех шестиугольников граничат друг с другом.

Логическое мышление и опыт

Важность логики

Какую роль играет в информатике? Центральную. Работа компьютеров основана на логике, а значит, чтобы программировать их, давать им указания, нужно мыслить логически. В противном случае вы с большой вероятностью ошибетесь.

— один из ключевых компонентов вычислительного мышления, которое проходит через все его аспекты, и не важно, какая стоит задача — создавать алгоритмы или оценивать их. Программистам необходимо мыслить логически, когда они разрабатывают новую программу, переделывают уже существующую под новые задачи, ищут дефекты программного кода или проводят иную оценку.