На Горох
Информатика

6. Сортировка в таблице

"Информатика (в 2 частях)", Павлов Д.И., Полежаева О.А., Коробкова Л.Н. и др./ Под ред. Горячева А.В.

Объяснение темы В оглавлении: 6. Сортировка в таблице

Кратко о теме

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

Объяснение темы

Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.

Определения и обозначения

Сортировка — упорядочивание строк таблицы по значениям выбранного признака. Иными словами, программа сравнивает записи по какому-то общему параметру и переставляет строки так, чтобы получился заданный порядок. Сортировка нужна, когда требуется быстрее найти запись, сравнить значения или представить данные понятнее. При этом запись перемещается целиком, а не отдельными клетками.

Ключ сортировки — столбец или другой признак, по которому определяется порядок строк. Если нужно расположить учеников по фамилиям, ключом будет столбец «Фамилия», а для товаров по цене — столбец «Цена». Выбор ключа определяет, какие значения программа будет сравнивать. Поэтому перед сортировкой нужно убедиться, что выбран именно тот признак, который отвечает условию задачи.

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

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

Как это устроено

Перед сортировкой выбирают всю таблицу или весь диапазон записей, потому что значения в строке связаны между собой. Например, в строке товара его название, количество и цена описывают один и тот же объект. Если переставить только цены, а названия оставить, таблица начнёт сообщать неверные сведения. Поэтому программа должна перемещать строку целиком, сохраняя принадлежность каждого значения своей записи.

Результат зависит от выбранного ключа, так как именно его значения программа сравнивает между строками. В таблице с именами, классами и оценками можно упорядочить записи по любому из этих признаков. Сортировка по классу поставит рядом учеников одного класса, а сортировка по оценке расположит записи по результатам. Один и тот же набор данных поэтому может получить разные порядки, не меняя самих значений.

Направление сортировки задаёт, с какого конца начинается упорядоченный ряд. Для чисел возрастание означает движение от небольшого значения к большому, а убывание — наоборот. В тексте программа обычно сравнивает буквы по алфавиту, а в датах учитывает календарную последовательность. Нужно выбирать направление по задаче: «от самой высокой цены» требует убывания, а «по алфавиту» — обычно возрастания.

Если значения ключа совпадают, сравнение по этому признаку не позволяет решить, какая из таких строк будет первой. Программа может оставить совпавшие записи в исходном порядке, но это зависит от её настроек и способа сортировки. Чтобы результат был предсказуемым, задают дополнительный ключ: например, фамилию после класса. Тогда одинаковые значения первого ключа сравниваются по следующему признаку.

Для сортировки сначала выделяют диапазон, содержащий записи, затем выбирают столбец-ключ и направление. Если в диапазоне есть заголовки, их обозначают как строку заголовков, чтобы названия столбцов не смешались с данными. После выполнения проверяют, что строки сохранили связь, а значения ключа расположены в нужном направлении. Особенно полезно сверить первый и последний элементы: они быстро показывают, правильно ли выбран порядок.

Сортировка данных разных типов

Тип данныхПо возрастаниюПо убыванию
ЧислаОт меньшего к большемуОт большего к меньшему
ТекстОбычно от А до ЯОбычно от Я до А
ДатыОт более ранних к позднимОт более поздних к ранним
Одинаковые значения ключаМогут сохранять исходный порядок; можно задать дополнительный ключМогут сохранять исходный порядок; можно задать дополнительный ключ

Найди в таблице тип значений, которые выбраны ключом, и сравни нужное направление с условием задачи. Строка про одинаковые значения напоминает: направление само по себе не разделяет равные записи. Для них можно задать следующий ключ сортировки.

Разбор задач

Задача 1. В таблице записаны фамилии пяти учеников. Нужно расположить строки по фамилии в алфавитном порядке. В каждой строке могут быть и другие сведения об ученике, поэтому важно не отделить фамилию от соответствующей записи. Разберём, как получить нужный порядок.

  1. Выделяем всю таблицу с данными учеников, а не только столбец фамилий. Если есть строка с названиями столбцов, указываем программе, что это заголовки.
  2. Выбираем столбец «Фамилия» как ключ: именно его значения должны определять порядок записей.
  3. Выбираем сортировку по возрастанию, потому что фамилии требуется расположить от А до Я. После выполнения проверяем последовательность фамилий и целостность строк.

Ответ: строки таблицы расположены по фамилиям в алфавитном порядке, а остальные сведения каждого ученика остались при его фамилии.

Задача 2. В таблице указаны названия товаров, их количество и цена. Нужно расположить товары от самой высокой цены к самой низкой. Поскольку названия и количество относятся к конкретным ценам, сортировать только столбец цен нельзя. Сначала определим диапазон и ключ.

  1. Выделяем весь диапазон таблицы, включая названия товаров, количество и цены, но не смешивая заголовки с записями.
  2. Выбираем числовой столбец «Цена» как ключ сортировки. Так программа будет сравнивать именно стоимость каждого товара.
  3. Устанавливаем убывание: наибольшая цена должна оказаться раньше меньшей. Проверяем начало списка и убеждаемся, что названия и количества переместились вместе со своими ценами.

Ответ: товары расположены от самой высокой цены к самой низкой, и сведения о каждом товаре сохранены в одной строке.

Задача 3. В журнале есть столбцы «Класс», «Фамилия» и «Оценка». Нужно сначала распределить записи по классам, а внутри каждого класса расположить по фамилиям. Одного ключа недостаточно: при сортировке только по фамилии ученики разных классов могут перемешаться. Значит, задаём два ключа с разным приоритетом.

  1. Выделяем весь диапазон журнала и отмечаем строку заголовков, если она присутствует.
  2. Первым ключом выбираем «Класс»: это главный признак, по нему записи должны разделиться на группы.
  3. Вторым ключом задаём «Фамилия» и выбираем алфавитное направление. Тогда фамилии сравниваются внутри записей с одинаковым значением первого ключа.

Ответ: записи сгруппированы по классам, а в каждой группе фамилии расположены по алфавиту; оценки остаются связанными с учениками.

Типичные ошибки

Если отсортировать только один столбец, его значения перестанут соответствовать остальным сведениям строки. Такую ошибку допускают, когда выделяют только клетки нужного ключа и не замечают, что таблица содержит связанные данные. Проверь себя: название товара, его цена и количество должны остаться в одной записи. Если соответствия нарушились, отмени действие и сортируй весь диапазон.

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

Путаница с возрастанием и убыванием возникает, если ориентироваться только на кнопку, а не на требуемый порядок. Например, при запросе «от самой высокой цены» в начале списка должна стоять максимальная цена. Проверь первый и последний элементы: они покажут, в какую сторону упорядочены значения. Для текста и дат применяй соответствующую алфавитную или хронологическую последовательность.

Неверный ключ или неполный диапазон приводит к тому, что таблица упорядочивается не по нужному признаку либо строки теряют целостность. Такое случается, если выбрать похожий столбец или не включить часть записей. Сверь ключ с формулировкой задачи и проверь, что диапазон охватывает все столбцы и строки данных. Затем убедись, что результат отвечает условию, а значения каждой записи остались вместе.

Связь с другими темами

Чтобы сортировать данные правильно, нужно различать строки, столбцы, заголовки и значения разных типов. Эти элементы образуют основу таблицы и помогают определить, что именно выделять и по какому признаку сравнивать. Сортировка пригодится при поиске нужных записей, сравнении данных и подготовке таблиц к анализу. В электронных таблицах она связана с фильтрацией и обработкой больших наборов данных: эти инструменты помогают отбирать и изучать записи.

Что запомнить

  • Сортировка упорядочивает строки таблицы по выбранному ключу.
  • При сортировке нужно сохранять целостность каждой строки.
  • Ключ сортировки — признак, по которому сравниваются записи.
  • Возрастание и убывание задают направление порядка.
  • Для текста порядок обычно задаётся алфавитом, для чисел — их величиной, для дат — хронологией.
  • Перед сортировкой нужно проверить диапазон и наличие строки заголовков.
  • При равных значениях первого ключа можно использовать дополнительный ключ.

Частые вопросы по теме

Почему нельзя сортировать только один столбец таблицы?

Потому что значения в разных столбцах одной строки относятся к одной записи: например, товару, его цене и количеству. Если переместить только один столбец, цена может оказаться напротив другого товара. Сортируй весь диапазон данных, сохраняя строки целиком.

Чем сортировка по возрастанию отличается от сортировки по убыванию?

При возрастании числа идут от меньшего к большему, текст — обычно от А до Я, даты — от ранних к поздним. При убывании порядок обратный: от большего к меньшему, от Я до А и от поздних дат к ранним.

Что делать, если в таблице есть строка заголовков?

Не включай заголовки в сортируемые записи: названия столбцов должны остаться на месте. Если программа предлагает указать, есть ли у диапазона строка заголовков, отметь этот вариант. Затем проверь, что после сортировки названия не переместились.

Как сортировать таблицу сначала по одному, а затем по другому признаку?

Задай несколько ключей с приоритетами: сначала основной, затем дополнительный. Например, первым выбери столбец «Класс», вторым — «Фамилия». Тогда фамилии упорядочатся внутри каждого класса.

Почему после сортировки некоторые данные оказались не на своих строках?

Вероятнее всего, был отсортирован только один столбец или выбран не весь диапазон таблицы. Из-за этого значения перестали соответствовать записям, к которым относились. Отмени действие, выдели всю таблицу и повтори сортировку по нужному ключу.

Спросить по теме параграфа

6. Сортировка в таблице

Учебник

Оглавление →
Предмет
Информатика
Учебник
"Информатика (в 2 частях)", Павлов Д.И., Полежаева О.А., Коробкова Л.Н. и др./ Под ред. Горячева А.В.