"Математика. Наглядная геометрия", Ходот Т.Г., Ходот А.Ю.
Алгоритм — это точная последовательность команд, которая помогает решить задачу или достичь цели. Его выполняет исполнитель: человек или устройство, умеющее действовать по определённым указаниям. Чтобы алгоритм сработал, команды должны быть понятными и выполнимыми для этого исполнителя, а порядок действий — правильным. Алгоритмы можно описывать словами, последовательностью команд или схемой. Проверка на простом примере помогает найти ошибку и убедиться, что цель достигнута.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Алгоритм — точная и понятная последовательность команд, которая приводит к решению задачи. Например, чтобы сложить числа 3 и 5, можно записать: возьми число 3, прибавь 5, запиши результат. Здесь ясно, что делать и в каком порядке, поэтому алгоритм помогает получить нужный ответ без догадок.
Исполнитель алгоритма — человек или устройство, которое выполняет команды. Исполнителем может быть ученик, робот или чертёжный инструмент с заданными возможностями. Он умеет делать только то, что ему доступно: робот не обойдёт препятствие, если не умеет поворачивать.
Команда — отдельное указание исполнителю. Например, «сделай шаг вправо» подходит тому, кто может двигаться по клеткам, а «иди туда» не объясняет точно, куда направляться. Команда должна быть понятной и выполнимой, иначе исполнитель не сможет действовать правильно.
Система команд исполнителя — набор команд, которые данный исполнитель умеет выполнять. Если чертёжный исполнитель умеет ставить точки и проводить отрезки, именно эти указания можно использовать для построения фигуры. Сверка с системой команд нужна, чтобы алгоритм не содержал действий, недоступных исполнителю.
Сначала нужно определить цель: какой результат требуется получить. Затем выбирают исполнителя, ведь команды для человека, робота и чертёжного инструмента могут быть разными. После этого задачу разбивают на действия, доступные выбранному исполнителю, — так общая цель становится последовательностью конкретных шагов.
Команды должны быть точными и понятными, потому что исполнитель не обязан угадывать смысл указания. Например, фраза «подойди поближе» не говорит, на сколько шагов двигаться, а «сделай два шага вперёд» задаёт действие яснее. Чем меньше в команде неясных слов, тем легче выполнить алгоритм одинаково и без ошибок.
Выполнимость проверяют для каждой команды отдельно. Нужно спросить себя: умеет ли исполнитель совершить такое действие и есть ли оно в его системе команд? Если ответ отрицательный, алгоритм надо изменить: например, заменить поворот на доступные движения по клеткам или выбрать другого исполнителя.
Выполнять алгоритм нужно по порядку: начать с первой команды, сделать указанное действие и только затем переходить к следующей. После каждого шага полезно отмечать, где находится исполнитель или что уже изменилось. Такой контроль помогает не пропустить команду и заметить, если результат действия отличается от ожидаемого.
Ошибку в алгоритме удобно искать на простом примере. Выполни все команды одну за другой и в конце сравни полученный результат с целью. Если цель не достигнута, проверь, не было ли непонятного указания, недоступного действия или неправильного порядка; затем исправь ошибку и пройди алгоритм снова.
| Способ описания | Как выглядит | Что важно проверить |
|---|---|---|
| Словесное описание | Команды записаны обычными словами | Точны ли формулировки и понятны ли они исполнителю |
| Последовательность команд | Отдельные указания идут одно за другим | Выполнима ли каждая команда и верен ли порядок |
| Рисунок или схема | Шаги и переходы показаны графически | Понятно ли, что означает каждый знак и куда вести дальше |
Выбирай такое описание, которое удобно исполнителю и не скрывает нужных действий. Перед выполнением проверь точность команд, их порядок и доступность. Схему тоже нужно читать по правилам: иначе можно неверно понять переход между шагами.
Исполнитель должен дойти от двери класса до своей парты и обойти стул. Чтобы составить команды, сначала представим путь: нужно двигаться по свободному месту, обогнуть стул и затем продолжить к парте. Команды вроде «обойди стул» могут быть слишком общими, поэтому их лучше уточнить по ситуации.
Если расположение стула или парты изменится, прежние команды могут не подойти — путь надо проверить заново. Ответ: последовательность команд, которая ведёт к парте по свободному проходу и обходит стул.
Чертёжный исполнитель умеет выполнять только две команды: «поставь точку» и «проведи отрезок». Даны три вершины треугольника, обозначим их A, B и C; требуется соединить их сторонами. Сначала нужно поставить все вершины, а затем провести отрезки между каждой парой соседних вершин.
Каждый шаг использует команду из системы исполнителя, а порядок позволяет сначала отметить точки, а затем соединить их. Ответ: алгоритм построения состоит из трёх команд «поставь точку» и трёх команд «проведи отрезок», соединяющих AB, BC и CA.
Исполнитель стоит в начале координат (0; 0) и перемещается на одну клетку вверх, вниз, вправо или влево. Нужно прийти в точку (2; 1), не попав на клетку (1; 0). Если сначала идти вправо, исполнитель окажется на запрещённой клетке, поэтому надо выбрать обходной путь.
Путь использует только доступные команды, а положение после каждого шага можно проверить по координатам. Ответ: вверх, вправо, вправо; исполнитель приходит в (2; 1), не попадая на (1; 0).
Расплывчатая команда. Указание «иди к парте» не задаёт точного пути, поэтому его можно понять по-разному. Так пишут, когда представляют, что исполнитель сам догадается о нужных действиях. Проверь себя: сможет ли он выполнить команду без уточняющих вопросов, и замени её конкретными шагами.
Команды вне системы исполнителя. Если исполнитель не умеет поворачивать, указание «поверни налево» он не выполнит. Ошибку допускают, когда составляют команды для себя, а не для заданного исполнителя. Сверь каждое действие с его возможностями и убери или замени недоступные команды.
Неправильный порядок. Даже верные действия могут привести не к цели, если переставить их местами. Например, проводить стороны треугольника до того, как поставлены его вершины, неудобно или невозможно. Выполни команды по порядку и после каждого шага проверь положение или полученный результат.
Любой набор команд считают алгоритмом. Перечень действий ещё не гарантирует решения: указания могут быть неясными, невыполнимыми или вести в сторону от цели. Так ошибаются, если проверяют только наличие команд, но не весь путь от начала до результата. Пройди алгоритм на примере и проверь понятность, выполнимость и достижение цели.
До изучения алгоритмов полезно уметь читать условие задачи, выделять цель и выполнять действия в заданном порядке. Эти навыки помогают понять, что именно должен получить исполнитель и какие шаги ему нужны. Алгоритмическое мышление пригодится при пошаговом построении геометрических фигур и решении задач на координатной плоскости.
В геометрии нужно соблюдать порядок построения и проверять, что все элементы фигуры соединены правильно. На координатной плоскости удобно отмечать положение исполнителя после каждого перемещения. Позже представления о командах и порядке действий помогут изучать блок-схемы и составление программ.
Чем алгоритм отличается от обычного совета?
Совет часто звучит примерно и оставляет человеку выбор, как именно поступить. Алгоритм задаёт понятные действия и их порядок, чтобы исполнитель мог выполнить их и прийти к цели.
Может ли один алгоритм подходить разным исполнителям?
Может, если оба исполнителя понимают команды и умеют их выполнять. Если их возможности различаются, алгоритм придётся изменить или записать команды по-разному.
Что делать, если команда непонятна исполнителю?
Нужно заменить её точным указанием, которое исполнитель сможет понять и выполнить. Если подходящей команды в его системе нет, сначала надо выбрать другого исполнителя или изменить задачу.
Как проверить, что алгоритм составлен правильно?
Выполни все команды по порядку на простом примере. Сравни результат с целью и проверь, была ли выполнима каждая команда.
Обязательно ли записывать алгоритм словами?
Нет. Его можно представить последовательностью команд или рисунком-схемой, если способ записи понятен исполнителю. Главное — чтобы сохранялись точность и порядок действий.
§ 5. Алгоритмы