Книга: Вычислительное мышление: Метод решения сложных задач
Проверяем детали
Проверяем детали
Нетрудно осознать, что придется иметь дело не только с буквами алфавита. Нам также понадобятся пробелы, цифры, точки и так далее. Их необходимо добавить к списку букв, который использует помощница. Вероятно, есть способ и получше, чем зачитывать длинный список. Например, сначала задать вопрос: «Это буква?» Если ответ положительный, то будем продолжать как раньше. Если нет, переходим к другим символам. Звучит знакомо? Это та же идея, благодаря которой в компьютерах используются разные наборы символов.
Еще одна проблема, требующая решения: что делать, если человек моргнет по ошибке? У нас должен быть способ сказать: «Проигнорируйте последний раз и начинайте читать буквы с начала». Но так, чтобы не пришлось передавать эту фразу по буквам! Подобным образом, если вы сделали ошибку, нужно найти способ вернуться назад. Нам нужен код, который означает «отменить». Возможность отменить действие – важная часть любого алгоритма с участием людей, так как люди делают ошибки. Например, условимся, что для этого надо быстро моргнуть два раза. Или придумайте что-нибудь получше. Вполне вероятно, что вы обнаружите другие проблемы, требующие решения?
В теории и на практике такая проверка или оценка работы алгоритма является важной составляющей вычислительного мышления. Если мы придумали новый алгоритм, его работу надо очень тщательно проверить. Программисты на оценку программ (то есть алгоритмов для компьютеров) тратят больше времени, чем на их создание. Очень легко ошибиться в какой-то мелочи или забыть о возможной ситуации, с которой должен справиться алгоритм. Но смысл алгоритма в том, что он работает всегда, что бы ни случилось.
Алгоритмическое мышление подразумевает, что мы обдумываем детали и находим решения для возникающих проблем. Мы осознаем, что есть много способов сделать одно и то же, а потом предлагаем улучшенные варианты для конкретной ситуации. Также заметим, что одна из упомянутых выше задач связана с характерной для человека особенностью – свойством ошибаться. Теоретически наше решение работает, надо только моргнуть в нужный момент! И мы могли бы высокомерно заявить, что надо совершать определенные действия, а не получилось – сами виноваты. На практике не всегда моргаешь, когда нужно. И лучше все-таки решить задачу так, чтобы алгоритм работал для людей. В конце концов, мы пытаемся помочь человеку, а не машине! Вычислительное мышление связано еще и с пониманием того, что такое человек.
- Сидром «запертого человека»
- Просто как A, B, C
- Как это сделал Боби?
- Проверяем детали
- Улучшаем метод
- Насколько это быстро?
- 20 вопросов?
- Насколько это эффективно?
- Новый алгоритм
- Коды для букв
- Выбираем лучшее решение
- Делаем жизнь Боби лучше
- Главное — алгоритмическое мышление
- Еще важнее — понять человека
- Ему подошло
- Проверяем на совпадения
- Второй просмотр: детали
- 4.2. Создание трехмерной модели и построение горизонтальной проекции детали
- Детализирующие вопросы
- Окончательная детализация плана перехода на новую систему и поддержка ее работы
- Детали
- Что такое проверяемые задания
- Детализация состава работ
- Глава 4 Разговорите своего клиента: детализирующие и сравнительные вопросы
- 4.3. Создание трехмерной модели и построение видов сверху и слева детали
- 3.5.1. Определение и задание свойств детали
- 2.5. Управление режимом отображения детали