"Информатика", Семёнов А.Л., Рудченко Т.А.
Автомат-сортировщик распределяет предметы по группам по заранее заданному правилу. Он может быть настоящим устройством или моделью, описанной словами, схемой либо программой. Чтобы автомат не ошибался, для каждого предмета проверяют выбранный признак, например цвет, форму или значение числа, и предусматривают действие для каждого ответа на проверку. Затем предметы обрабатывают по одному и проверяют итоговые группы.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Автомат-сортировщик — устройство или модель, которая распределяет поступающие предметы по группам согласно заданному правилу. Это может быть настоящий механизм или описание его работы в виде алгоритма. Понятие помогает представить, как одинаковые действия можно повторять для множества предметов. Автомат не выбирает правило сам: его заранее задаёт человек.
Сортировка — упорядочивание объектов или распределение их по группам по выбранному признаку. Например, карточки можно разложить по коробкам в зависимости от того, изображено на них яблоко или груша. Сортировка помогает быстро находить нужные объекты и видеть, чем группы отличаются друг от друга. Чтобы результат был понятным, должно быть ясно, что означает каждая группа.
Признак сортировки — свойство объекта, по которому автомат принимает решение, например цвет, размер или форма. Для карточек с фруктами таким признаком может быть вид фрукта, а для фигур — наличие круглой формы. Признак нужен, чтобы решить, куда направить объект. Его следует выбирать так, чтобы значение можно было проверить у каждого предмета.
Алгоритм сортировки — последовательность действий и проверок, по которой автомат обрабатывает предметы. В алгоритме описывают, что проверить и что сделать при каждом возможном результате проверки. Благодаря этому предметы обрабатываются одинаково, даже если их много. Если пропустить один из шагов, часть объектов может остаться без группы или попасть не туда.
Сначала в автомат поступает предмет, который нужно распределить. Чтобы принять решение, автомату нужны сведения о его свойствах: например, цвет, форма или число, написанное на карточке. Эти сведения называют признаком сортировки, и он должен быть доступен для проверки. Если выбранное свойство невозможно определить у какого-то предмета, надёжно распределить такой предмет не получится.
До начала работы выбирают признак и задают правило, потому что без них нельзя определить, какой результат считать правильным. Например, при сортировке фигур можно решить, что круги попадут в одну коробку, а остальные фигуры — в другую. Правило должно быть понятным не только человеку, который его придумал, но и тому, кто будет проверять результат. Тогда для каждого объекта найдётся подходящая группа.
Далее автомат проверяет признак по условию, на которое можно ответить «да» или «нет». Если проверяется, является ли фигура кругом, ответ «да» направляет её в группу кругов, а ответ «нет» — в группу остальных фигур. Проверка определяет путь предмета, поэтому для каждого результата необходимо предусмотреть действие. Иначе автомат не будет знать, что делать с частью объектов.
Если предметов несколько, автомат берёт их по одному и повторяет ту же проверку и те же действия. Такой порядок важен: решение для каждого предмета зависит от его свойства, а не от того, каким по счёту он поступил. Например, число сравнивают с порогом, затем кладут карточку в соответствующую коробку и переходят к следующему числу. Повторение одного алгоритма делает работу последовательной и помогает не пропустить предмет.
После обработки проверяют не только то, что коробки заполнены, но и то, соответствует ли содержимое каждой коробки правилу. Нужно убедиться, что все исходные предметы учтены и ни один не оказался вне групп. Особое внимание уделяют значениям на границе условия: например, число, равное 10, не меньше 10, хотя оно не больше 10. Такая проверка помогает обнаружить ошибку в условии или в выполнении алгоритма.
Таблица помогает не забыть части алгоритма. Заполните её до начала сортировки, а затем сравните с ней действия автомата и получившиеся группы.
Если для какого-то результата проверки действие не указано, правило неполное. В строке результата запишите, какие группы должны получиться.
| Элемент описания | Что указать |
|---|---|
| Входные объекты | Какие предметы поступают в автомат |
| Признак сортировки | Какое свойство каждого предмета проверяется |
| Правило или условие проверки | Как определить результат проверки |
| Действие при выполнении условия | Куда направить предмет, если ответ «да» |
| Действие при невыполнении условия | Куда направить предмет, если ответ «нет» |
| Результат сортировки | Какие группы должны получиться |
Задача 1. Разложить карточки с изображениями яблок и груш по двум коробкам. Нужно выбрать признак, по которому эти изображения различаются, и указать действия автомата для каждого вида фрукта.
Ответ: карточки с яблоками кладут в одну коробку, с грушами — в другую. Проверяем, что каждая карточка попала в коробку с подходящим изображением и ни одна не пропущена.
Задача 2. Распределить набор фигур на круги и не круги, описав работу автомата. Здесь важно не пытаться угадать, куда отнести предмет, а применить одно и то же проверяемое условие к каждой фигуре.
Ответ: каждый круг окажется в группе кругов, каждая другая фигура — в группе не кругов. Оба исхода проверки предусмотрены, поэтому предметы не остаются без решения.
Задача 3. Карточки с числами 4, 10, 13, 7 нужно разложить в коробки «меньше 10» и «не меньше 10». Требуется точно определить, куда попадёт число 10, и проверить всю последовательность.
Ответ: в коробке «меньше 10» будут числа 4 и 7, в коробке «не меньше 10» — 10 и 13. Число 10 учтено во второй группе, потому что условие первой группы строгое: число должно быть именно меньше 10.
Ошибка: выбирать признак, который нельзя однозначно проверить у каждого объекта. Например, слово «красивый» может означать разное для разных людей, поэтому автомат не сможет надёжно решить, куда направить предмет. Такую ошибку допускают, когда не отделяют личную оценку от проверяемого свойства. Проверьте себя: сможете ли вы одинаково ответить на вопрос о признаке для каждого объекта?
Ошибка: задавать правило только для одного результата проверки. Тогда автомат знает, что делать, например, с кругом, но не знает, куда отправить квадрат. Это часто происходит, когда описывают только ожидаемый случай. Проверьте, есть ли действие и для ответа «да», и для ответа «нет».
Ошибка: путать признак сортировки с группой. Цвет может быть признаком, по которому принимают решение, а коробка «синие предметы» — результатом распределения. Путаница возникает, когда в описании не разделяют проверку и итог. Чтобы проверить себя, спросите отдельно: «Что я проверяю?» и «Куда отправляю предмет?».
Ошибка: не проверять граничные значения и отдельные предметы. Например, число 10 можно ошибочно отправить в группу чисел меньше 10, если не разобраться со словами «меньше» и «не больше». Ошибку допускают, когда применяют правило на глаз или проверяют лишь часть набора. Пересмотрите каждый предмет, особенно тот, который равен порогу условия, и убедитесь, что все они учтены.
Для работы с автоматом-сортировщиком нужно уметь описывать свойства объектов и задавать простые условия с ответом «да» или «нет». Например, сравнение числа с 10 — это проверка, результат которой помогает выбрать дальнейшее действие. Поэтому сортировка связывает описание объектов с построением алгоритма. Чем точнее сформулировано условие, тем понятнее будет порядок работы.
Проверка условия и выбор действия пригодятся при изучении алгоритмов с ветвлением. Ветвление означает, что дальнейший шаг зависит от ответа на условие: при одном ответе выполняют одно действие, при другом — другое. Тот же принцип используют в программах, когда компьютер проверяет данные и выбирает команду. Алгоритм сортировщика помогает сначала продумать такую логику без записи программы.
Чем автомат-сортировщик отличается от обычного автомата?
Обычный автомат может выполнять разные действия, например выдавать билет или напиток. Автомат-сортировщик предназначен именно для распределения объектов по группам по заданному признаку. Он проверяет свойства предмета и направляет его в подходящее место.
Можно ли сортировать предметы сразу по нескольким признакам?
Можно, если правило описывает, в каком порядке проверять признаки и как действовать при каждом результате. Например, сначала можно разделить предметы по цвету, а затем предметы одной группы — по размеру. Без точного порядка некоторые объекты могут оказаться сразу в нескольких группах или не попасть ни в одну.
Что делать, если предмет подходит сразу к нескольким группам?
Нужно уточнить правило: сделать группы непересекающимися или задать приоритет проверок. Например, сначала отправлять все красные предметы в одну коробку, а остальные распределять по форме. Тогда для каждого объекта будет понятно, какое действие выполнить.
Почему правило сортировки нужно формулировать точно?
Точное правило позволяет одинаково обработать каждый предмет и получить предсказуемый результат. Неясное условие вроде «большой предмет» разные люди могут понять по-разному. Лучше указать проверяемый критерий, например «длина больше 10 сантиметров».
Как понять, что автомат распределил предметы правильно?
Нужно убедиться, что каждый предмет попал в одну из предусмотренных групп и ни один не потерялся. Затем проверяют, соответствует ли каждый предмет правилу своей группы. Отдельно полезно проверить граничные случаи, например число, равное порогу.
Автомат-сортировщик