Сортировка данных
Начнем с самого простого и доступного варианта — сортировки.
Мы уже частично разбирали как можно структурировать данные с помощью фильтра и сортировки. Вкратце, для сортировки необходимо выделить диапазон с данными и на панели вкладок выбрать Главная
-> Редактирование
-> Сортировка и фильтр
, а далее указать по какому критерию нужно произвести сортировку.
В данном случае выберем Сортировка по убыванию
, где значения будут расположены от большего к меньшему:
Минусом данного способа является изменение структуры исходных данных, так как в процессе сортирования данных строки и столбцы могут меняться местами, что в некоторых случаях неудобно или невозможно сделать. Также к важным недостаткам этого варианта можно отнести отсутствие возможности автоматизировать сортировку. Поэтому каждый раз при изменении данных сортировку придется делать еще раз.
В качестве решения данной проблемы рассмотрим другой способ ранжирования, который впрочем можно рассматривать и отдельно от решения этой задачи.
Как ранжировать числовые данные в Excel?
Научимся ранжировать числовые данные в Excel с помощью стандартной сортировки, а также функции РАНГ и ее частных случаях (РАНГ.РВ и РАНГ.СР), которые помогут в автоматизации сортировки.
Приветствую всех, дорогие читатели блога TutorExcel.Ru.
Задача ранжирования числовых данных постоянно возникает в работе с целью поиска наибольших или наименьших значений в списке.В Excel с этой задачей можно справиться 2 способами: стандартным инструментом сортировки и с помощью функций.
Для примера возьмем простую таблицу со списком числовых значений, в которой в дальнейшем и будем ранжировать данные:
Сортировка данных
Начнем с самого простого и доступного варианта — сортировки.
Мы уже частично разбирали как можно структурировать данные с помощью фильтра и сортировки.Вкратце, для сортировки необходимо выделить диапазон с данными и на панели вкладок выбрать Главная -> Редактирование -> Сортировка и фильтр, а далее указать по какому критерию нужно произвести сортировку.
В данном случае выберем Сортировка по убыванию, где значения будут расположены от большего к меньшему:
Минусом данного способа является изменение структуры исходных данных, так как в процессе сортирования данных строки и столбцы могут меняться местами, что в некоторых случаях неудобно или невозможно сделать.Также к важным недостаткам этого варианта можно отнести отсутствие возможности автоматизировать сортировку. Поэтому каждый раз при изменении данных сортировку придется делать еще раз.
В качестве решения данной проблемы рассмотрим другой способ ранжирования, который впрочем можно рассматривать и отдельно от решения этой задачи.
Ранжирование данных
При отсутствии возможности изменения структуры документа мы можем создать дополнительный ряд данных, где будут содержаться порядковые номера исходных данных.Получить эти порядковые номера нам поможет функция РАНГ (а также РАНГ.РВ и РАНГ.СР).
Функция РАНГ в Excel
Синтаксис и описание функции:
- Число (обязательный аргумент) — число для которого вычисляется ранг;
- Ссылка (обязательный аргумент) — массив или ссылка на массив чисел;
- Порядок (необязательный аргумент) — способ упорядочения. Если аргумент равен 0 или не указан, то значение 1 присваивается максимальному элементу в списке (условно говоря, сортируем по убыванию), в ином случае значение 1 присваивается минимальному элементу (сортируем по возрастанию).
Эта функция доступна во всех версиях Excel, однако начиная с Excel 2010 на ее замену добавлены РАНГ.РВ и РАНГ.СР, а РАНГ оставлена для совместимости с Excel 2007, давайте подробнее остановимся на их работе.
Функции РАНГ.РВ и РАНГ.СР в Excel
Синтаксис и описание функций:
Аргументы у всех трех функций одинаковые, т.е. кардинально они почти не отличаются, есть небольшие различие в деталях.На примере исходной таблицы посмотрим как работает с данными каждая из функций:
Как мы видим отличие заключаются лишь в типе ранжирования совпадающих элементов данных.
В случае с РАНГ.РВ равным элементам присваивается высший ранг.В нашем примере категориям Ноутбуки и Мультиварки соответствует одинаковое значение элемента — 710, который является 3 по порядку убывания, соответственно обоим значениям присваивается высший ранг — 3.Для РАНГ.СР для этих же значений устанавливается их средний ранг, т.е. среднее между 3 и 4 порядковыми номерами — 3,5.
На этом различия между ними заканчиваются, поэтому в зависимости от ваших задач можно использовать ту или иную функцию.Если нужно отсортировать значения по возрастанию, то в качестве аргумента Порядок нужно указать значение 1:
Автоматическая сортировка
Немного усложним задачу и представим, что нам в дальнейшем нужно составить отсортированную таблицу, которая бы автоматически обновлялась при изменении данных в исходной таблице.
Например, это можно сделать с помощью функции ВПР, или комбинации ИНДЕКС и ПОИСКПОЗ, однако в случае наличия одинаковых значений в списке мы не сможем корректно подтянуть данные и получим ошибку:
В этом случае можно воспользоваться простым приемом в виде небольшой хитрости.Добавим к каждому значению исходной таблицы не совпадающие случайные числа близкие к нулю, к примеру, я для этих целей использую функции СТРОКА или СТОЛБЕЦ, поделенные на заведомо большую величину.
Этот шаг позволит нам получить различные числа в исходных данных, избежать совпадения рангов и ошибки при подтягивании данных:
Теперь для всех элементов таблицы (даже изначально совпадающих) определен свой индивидуальный ранг отличный от остальных, поэтому ошибок при автоматическом ранжировании данных удастся избежать.
Скачать файл с примером.
Удачи вам и до скорых встреч на страницах блога TutorExcel. Ru!
Пример функции РАНГ.СР в Excel
Возвращает номера числового значения в списке (порядковый номер относительно других значений). То есть выполняет ту же задачу. Только при обнаружении идентичных значений возвращает средний показатель.
Вот результат работы функции:
Формула в столбце «по убыванию»: =РАНГ.СР(A2;$A$2:$A$9;0). Так, функция значению 87 присвоила средний номер 1,5.
Допустим, в списке чисел три повторяющихся значения (выделены оранжевым цветом).
Функция присвоила каждому из них ранг 5, что является средним для 4, 5 и 6.
Сравним работу двух функций:
Напомним, что эти две функции работают только в Excel 2010 и выше. В более ранних версиях для этих целей можно задействовать формулу массива.
Скачать примеры функции ранжирования РАНГ в Excel.
Таким образом, все выше описанные примеры позволяют автоматизировать работу по ранжированию данных и составлению рейтинга значений без применения сортировки.
Функция РАНГ() при применении возвращает в виде результата номер позиции элемента в конкретно определённом списке. Сам результат представляет собой число, которое показывает, какое бы место занимал элемент в этой строке, если бы указанный диапазон был отсортирован по возрастанию или по убыванию.
Как ранжировать числовые данные в Excel?
Научимся ранжировать числовые данные в Excel с помощью стандартной сортировки, а также функции РАНГ и ее частных случаях (РАНГ.РВ и РАНГ.СР), которые помогут в автоматизации сортировки.
Приветствую всех, дорогие читатели блога TutorExcel.Ru.
Задача ранжирования числовых данных постоянно возникает в работе с целью поиска наибольших или наименьших значений в списке. В Excel с этой задачей можно справиться 2 способами: стандартным инструментом сортировки и с помощью функций.
Для примера возьмем простую таблицу со списком числовых значений, в которой в дальнейшем и будем ранжировать данные:
Как ранжировать элементы по нескольким критериям в Excel
Вы можете использовать комбинацию функций RANK.EQ() и COUNTIFS() в Excel для ранжирования элементов по нескольким критериям.
В следующем примере показано, как использовать эти функции для ранжирования элементов в списке по нескольким критериям в Excel.
Пример. Ранжирование по нескольким критериям в Excel
Предположим, у нас есть следующий набор данных в Excel, который показывает общее количество очков и передач для восьми разных баскетболистов.
Теперь предположим, что мы хотим ранжировать каждого игрока по следующим критериям:
- Во-первых, ранжируйте каждого игрока на основе очков.
- Затем ранжируйте каждого игрока на основе передач.
Мы можем использовать следующую формулу для выполнения этого ранжирования по нескольким критериям:
Мы можем ввести эту формулу в ячейку D2 нашей электронной таблицы, а затем скопировать и вставить формулу во все остальные ячейки в столбце D:
Из вывода мы видим, что Энди получает ранг 1 , потому что он делит наибольшее количество очков с Бернардом. Однако у Энди больше передач, чем у Бернарда, поэтому он получает ранг 1 , а Бернард получает ранг 2 .
Каждый игрок оценивается аналогичным образом, сначала на основе их общего количества очков, а затем на основе их общего количества передач.
Если вместо этого мы хотим выполнить ранжирование по нескольким критериям в обратном порядке («лучший» игрок получает наивысший рейтинг), мы можем использовать следующую формулу:
Мы можем ввести эту формулу в ячейку D2, а затем скопировать и вставить формулу во все остальные ячейки в столбце D:
Обратите внимание, что ранжирование полностью противоположно предыдущему примеру. Игрок с наибольшим количеством очков и передач (Энди) теперь имеет рейтинг 8
Точно так же у Бернарда теперь рейтинг 7.И так далее.
Примеры использования функции РАНГ в Excel
- — число : указание на ячейку, позицию которой необходимо вычислить;
- — ссылка : указание на диапазон ячеек, с которыми будет производиться сравнение;
- — порядок : значение, которое указывает на тип сортировки: 0 – сортировка по убыванию, 1 – по возрастанию.
Функция РАНГ.РВ() не отличается по работе от общей функции РАНГ(). Как и было указано выше, если программа обнаружит несколько элементов, значения которых будут равны, то присвоит им высший ранг – например, при совпадении результатов им всем будет присвоено одно место.
Функция РАНГ.СР() указывает, что при совпадении результатов им будет присвоено значение, соответствующее среднему между номерами ранжирования.
Ранжирование товаров по количеству в прайсе
Пример 2. Покажем удобство ранжирования на конкретном примере. Существует документ, в который сведена общая отчётность компьютерного магазина с количеством товаров. Требуется определить ранжирование товаров по их количеству, а также составить таблицу для наглядности, которая будет изменяться с изменением отчётности.
Добавим колонку ранжирования и в ячейку C2 впишем следующую формулу: =РАНГ.РВ($B2;$B$2:$B$10;0). Протянем эту формулу вниз и получим следующий результат распределения мест:
Теперь нам потребуются три дополнительные колонки для создания удобной для восприятия таблицы. В первой колонке у нас будет записаны порядковые номера, во второй – отображены наименования товара, в третьей – их количество. Для того, чтобы таблица работала корректно и обновляла значения при их изменении в колонках А и B, применим к ячейке F2 формулу:
а к ячейке G2 – формулу:
Теперь, если, например, в магазине закончатся процессоры, а вместо них будут закуплены 300 наушников, можно будет просто внести эти изменения в ячейки A5 и B5, чтобы обновить информацию справа.
Пример функции РАНГ в Excel
Функция используется при ранжировании в перечне чисел. То есть позволяет узнать величину числа относительно других числовых значений. Если отсортировать список по возрастанию, то функция вернет позицию числа. Например, в массиве чисел {30;2;26} число 2 будет иметь ранг 1; 26 –2; 30 –3 (как наибольшее значение в списке).
Синтаксис функции:
- Число. Для, которого необходимо определить номер в ранжировании.
- Ссылка. На массив чисел или диапазон ячеек с числовыми значениями. Если задать в качестве аргумента просто числа, то функция вернет ошибку. Нечисловым значениям номер не присваивается.
- Порядок. Способ упорядочения чисел в списке. Варианты: аргумент равен «0» или опущен – значение 1 присваивается максимальному числу в списке (как будто список отсортирован в порядке убывания); аргумент равен любому неравному нулю числу – номер ранжирования 1 присваивается минимальному числу в списке (как будто список отсортирован в порядке возрастания).
Определим ранжирование чисел в списке без повторов:
Аргумент, определяющий способ упорядочения чисел, равен «0». Следовательно, в данной функции номера присваивались значениям от большего к меньшему. Максимальному числу 87 присвоен номер 1.
В третьем столбце приведена формула с рангом по возрастанию.
Определим номера значений в списке, где присутствуют повторяющиеся значения.
Желтым цветом выделены повторяющиеся числа. Для них определяется один и тот же номер. Например, числу 7 во втором столбце присвоен номер 9 (и во второй строке, и в девятой); в третьем столбце – 3. Но ни одно из чисел во втором столбце не будет иметь 10, а в третьем – 4.
Чтобы ранги не повторялись (иногда это мешает пользователю решить поставленную задачу), используется следующая формула:
Для работы функции можно установить пределы. Например, необходимо ранжировать только значения от 0 до 30. Чтобы решить задачу, применим функцию ЕСЛИ (=ЕСЛИ(A2
Серым цветом выделены значения, которые соответствуют заданному условию. Для чисел, которые больше 30, выводится пустая строка.
Функции ранжирования
Для выполнения ранжирования в Экселе предусмотрены специальные функции. В старых версиях приложения был один оператор, предназначенный для решения этой задачи – РАНГ. В целях совместимости он оставлен в отдельной категории формул и в современных версиях программы, но в них все-таки желательно работать с более новыми аналогами, если есть такая возможность. К ним относятся статистические операторы РАНГ.РВ и РАНГ.СР. О различиях и алгоритме работы с ними мы поговорим далее.
Способ 1: функция РАНГ.РВ
Оператор РАНГ.РВ производит обработку данных и выводит в указанную ячейку порядковый номер заданного аргумента из совокупного списка. Если несколько значений имеют одинаковый уровень, то оператор выводит высший из перечня значений. Если, например, два значения будут иметь одинаковую величину, то им обоим будет присвоен второй номер, а уже следующее по величине значение будет иметь четвертый. Кстати, полностью аналогично поступает и оператор РАНГ в более старых версиях Эксель, так что данные функции можно считать идентичными.
Синтаксис этого оператора записывается следующим образом:
=РАНГ.РВ(число;ссылка;)
Аргументы «число» и «ссылка» являются обязательными, а «порядок» — необязательным. В качестве аргумента «число» нужно ввести ссылку на ту ячейку, где содержится значение, порядковый номер которого нужно узнать. Аргумент «ссылка» содержит адрес всего диапазона, который ранжируется. Аргумент «порядок» может иметь два значения – «0» и «1». В первом случае отсчет порядка идет по убывающей, а во втором – по возрастающей. Если данный аргумент не указан, то он автоматически считается программой равным нулю.
Данную формулу можно записывать вручную, в ту ячейку, где вы хотите, чтобы выводился результат обработки, но для многих пользователей удобнее задавать вводные через окно Мастера функций.
- Выделяем на листе ячейку, в которую будет выводиться результат обработки данных. Щелкаем по кнопке «Вставить функцию». Она локализуется слева от строки формул.
Эти действия приводят к тому, что запускается окно Мастера функций. В нем представлены все (за редким исключениям) операторы, которые можно использовать для составления формул в Excel. В категории «Статистические» или «Полный алфавитный перечень» находим наименование «РАНГ.РВ», выделяем его и щелкаем по кнопке «OK».
После указанных выше действий будет активировано окно аргументов функции. В поле «Число» следует ввести адрес той ячейки, данные в которой нужно ранжировать. Это можно сделать вручную, но удобнее выполнить тем способом, о котором пойдет речь ниже. Устанавливаем курсор в поле «Число», а затем просто выделяем нужную ячейку на листе.
После этого её адрес будет занесен в поле. Точно таким же образом заносим данные и в поле «Ссылка», только в этом случае выделяем весь диапазон, в границах которого происходит ранжирование.
Если вы хотите, чтобы ранжирование происходило от меньшего к большему, то в поле «Порядок» следует установить цифру «1». Если же нужно, чтобы порядок распределялся от большего к меньшему (а в подавляющем числе случаев именно это и требуется), то данное поле оставляем пустым.
После того, как все вышеуказанные данные внесены, жмем на кнопку «OK».
После выполнения данных действий в предварительно указанной ячейке будет выведен порядковый номер, который имеет выбранное вами значение среди всего перечня данных.
Если вы желаете проранжировать всю указанную область, то совсем не нужно для каждого показателя вводить отдельную формулу. Прежде всего, делаем адрес в поле «Ссылка» абсолютным. Перед каждым значением координат добавляем знак доллара ($). При этом изменять значения в поле «Число» на абсолютные ни в коем случае не следует, иначе формула будет рассчитываться некорректно.
После этого нужно установить курсор в нижний правый угол ячейки, и дождаться появления маркера заполнения в виде небольшого крестика. Затем зажать левую кнопку мыши и протянуть маркер параллельно вычисляемой области.
Как видим, таким образом, формула скопируется, а ранжирование будет произведено на всем диапазоне данных.
Урок: Мастер функций в Excel
Урок: Абсолютные и относительные ссылки в Excel
Расчет рейтинга продавцов по количеству продаж в Excel
В документе отражается сводная таблица по продажам оборудования четырьмя продавцами за полгода. Требуется, используя ранжирование, создать решение, которое позволит смотреть рейтинг продавцов за каждый отдельный месяц без проведения повторяющихся подсчётов.
В качестве шапки для сортировки мы будем использовать клетку H1. Выделим её и перейдём в меню «ДАННЫЕ — Работа с данными — Проверка данных».
В окне «Проверка вводимых значений» в качестве типа данных выберем «Список» и укажем диапазон ячеек, в которых записаны месяцы. Так будет реализовано выпадающее меню со списком месяцев для удобства ранжирования. Диапазон выглядит следующим образом: =$B$1:$G$1.
Для ячейки H2 требуется определить формулу. Добавим в функцию РАНГ.СР() её обязательные элементы. Для этого включим в качестве аргумента число функцию ИНДЕКС(), где в аргументе массив определим общий диапазон интересующих нас данных в виде значения $B$2:$G$5. В качестве аргумента номер_строки функции укажем 0, а в качестве аргумента номер_столбца – функцию ПОИСКПОЗ().
Для того, чтобы функция ПОИСКПОЗ() работала корректно, укажем на диапазон, который будет интересовать нас при выборе месяца. Аргументы этой функции будут выглядеть следующим образом: $H$1;$B$1:$G$1;0, где $H$1 – ячейка с выбором месяца, значение которого будет искаться в диапазоне $B$1:$G$1 с полным соответствием.
В качестве аргумента ссылка функции РАНГ.СР() будет использована функция СМЕЩ(), позволяющая возвращать ссылку на ячейку, находящуюся в некотором известном отдалении от указываемой ячейки. Проще говоря, мы указываем ячейку $B$2 как основу, а затем, не смещая её по строкам, указываем с помощью уже известной функции ПОИСКПОЗ() с аргументами $H$1;$B$1:$G$1;0. Добавим ко второму аргументу функции СМЕЩ() значение «-1», т.к. для первой строки нам понадобится значение 0, для второй – 1 и т.д.
Для записи необязательного, но в нашем случае важного аргумента высота воспользуемся простой функцией СЧЁТЗ(), которая поможет подсчитать количество ячеек, заполненных в диапазоне $B$2:$B$5. В качестве аргумента ширина укажем значение «1»
Таким образом, итоговая формула для ячейки H2 будет выглядеть следующим образом:
Как видно, в диапазоне H2:H5 отобразилось ранжирование работников по количеству продаж оборудования за январь. Теперь мы можем, кликнув на ячейку H1, выбрать интересующий нас месяц, а таблица покажет ранжирование уже исходя из этого месяца.
Функция РАНГ устаревшая с 2010-й версии Excel, оставлена для обратной совместимости с 2007 и более ранними версиями, рекомендуется воспользоваться функциями и .
Функции ранжирования
Для выполнения ранжирования в Экселе предусмотрены специальные функции. В старых версиях приложения был один оператор, предназначенный для решения этой задачи – РАНГ. В целях совместимости он оставлен в отдельной категории формул и в современных версиях программы, но в них все-таки желательно работать с более новыми аналогами, если есть такая возможность. К ним относятся статистические операторы РАНГ.РВ и РАНГ.СР. О различиях и алгоритме работы с ними мы поговорим далее.
Способ 1: функция РАНГ.РВ
Оператор РАНГ.РВ производит обработку данных и выводит в указанную ячейку порядковый номер заданного аргумента из совокупного списка. Если несколько значений имеют одинаковый уровень, то оператор выводит высший из перечня значений. Если, например, два значения будут иметь одинаковую величину, то им обоим будет присвоен второй номер, а уже следующее по величине значение будет иметь четвертый. Кстати, полностью аналогично поступает и оператор РАНГ в более старых версиях Эксель, так что данные функции можно считать идентичными.
Синтаксис этого оператора записывается следующим образом:
Аргументы «число» и «ссылка» являются обязательными, а «порядок» — необязательным. В качестве аргумента «число» нужно ввести ссылку на ту ячейку, где содержится значение, порядковый номер которого нужно узнать. Аргумент «ссылка» содержит адрес всего диапазона, который ранжируется. Аргумент «порядок» может иметь два значения – «0» и «1». В первом случае отсчет порядка идет по убывающей, а во втором – по возрастающей. Если данный аргумент не указан, то он автоматически считается программой равным нулю.
Данную формулу можно записывать вручную, в ту ячейку, где вы хотите, чтобы выводился результат обработки, но для многих пользователей удобнее задавать вводные через окно Мастера функций.
- Выделяем на листе ячейку, в которую будет выводиться результат обработки данных. Щелкаем по кнопке «Вставить функцию». Она локализуется слева от строки формул.
- Эти действия приводят к тому, что запускается окно Мастера функций. В нем представлены все (за редким исключениям) операторы, которые можно использовать для составления формул в Excel. В категории «Статистические» или «Полный алфавитный перечень» находим наименование «РАНГ.РВ», выделяем его и щелкаем по кнопке «OK».
- После указанных выше действий будет активировано окно аргументов функции. В поле «Число» следует ввести адрес той ячейки, данные в которой нужно ранжировать. Это можно сделать вручную, но удобнее выполнить тем способом, о котором пойдет речь ниже. Устанавливаем курсор в поле «Число», а затем просто выделяем нужную ячейку на листе.
После этого её адрес будет занесен в поле. Точно таким же образом заносим данные и в поле «Ссылка», только в этом случае выделяем весь диапазон, в границах которого происходит ранжирование.
Если вы хотите, чтобы ранжирование происходило от меньшего к большему, то в поле «Порядок» следует установить цифру «1». Если же нужно, чтобы порядок распределялся от большего к меньшему (а в подавляющем числе случаев именно это и требуется), то данное поле оставляем пустым.
После того, как все вышеуказанные данные внесены, жмем на кнопку «OK».
Если вы желаете проранжировать всю указанную область, то совсем не нужно для каждого показателя вводить отдельную формулу. Прежде всего, делаем адрес в поле «Ссылка» абсолютным. Перед каждым значением координат добавляем знак доллара ($). При этом изменять значения в поле «Число» на абсолютные ни в коем случае не следует, иначе формула будет рассчитываться некорректно.
После этого нужно установить курсор в нижний правый угол ячейки, и дождаться появления маркера заполнения в виде небольшого крестика. Затем зажать левую кнопку мыши и протянуть маркер параллельно вычисляемой области.
Как видим, таким образом, формула скопируется, а ранжирование будет произведено на всем диапазоне данных.
Как ранжировать список по возрастанию в Excel
Пример 1. Есть документ, в котором записаны фамилии учеников и суммы баллов по оценкам за четверть. Требуется определить ранжирование учеников по успеваемости.
Используем для ячейки C2 формулу =РАНГ(B2;$B$2:$B$7;0), для ячейки D2 – формулу =РАНГ.РВ(B2;$B$2:$B$7;0), а для ячейки E2 – формулу =РАНГ.СР(B2;$B$2:$B$7;0). Протянем все формулы на ячейки ниже.
Таким образом, видно, что ранжирование по функциям РАНГ() и РАНГ.РВ() не отличается: есть два ученика, которые заняли второе место, третьего места нет, а также есть два ученика, которые заняли четвёртое место, пятого места также не существует. Ранжирование было произведено по высшим из возможных вариантов.
В то же время функция РАНГ.СР() присвоила совпавшим ученикам среднее значение из мест, которые они могли бы занимать, если бы сумма баллов, например, была с разницей в один балл. Для второго и третьего места среднее значение – 2,5; для четвёртого и пятого – 4,5.
Сортировка данных
Начнем с самого простого и доступного варианта — сортировки.
Мы уже частично разбирали как можно структурировать данные с помощью фильтра и сортировки. Вкратце, для сортировки необходимо выделить диапазон с данными и на панели вкладок выбрать Главная -> Редактирование -> Сортировка и фильтр, а далее указать по какому критерию нужно произвести сортировку.
В данном случае выберем Сортировка по убыванию, где значения будут расположены от большего к меньшему:
В качестве решения данной проблемы рассмотрим другой способ ранжирования, который впрочем можно рассматривать и отдельно от решения этой задачи.