Каким образом можно вывести диапазон размеров? На вход приходит массив с размерами (ширина[3, 6, 18, 22.5, 30, 34, 35, 38, 40, 45, 46, 50, 52, 53, 54, 55, 57, 59, 60, 67, 70, 76, 90, 99, 104, 110, 118, 160]) на каждую категорию товаров. На основании этих размеров нужно вывести диапазон для фильтра. Каким образом можно получить такие диапазоны размеров как:до 50от 50 до 100от 100 до 150больше 150
Значение минимального размера может быть больше 100+ и максимального больше 500+, всегда по разному. Как максимум нужно что бы было не больше 4 групп диапазонов, но допустимо что меньше 4-х групп.
Какой подход, позволит реализовать гибкий вывод диапазонов для фильтра?

21 Авг 2019 в 06:06
189 +1
1
Ответы
1

Для решения этой задачи можно использовать следующий подход:

Находим минимальное и максимальное значение в массиве размеров.Вычисляем шаг для разбиения диапазона на группы. Например, можно разделить диапазон на 4 равные части.Создаем четыре группы диапазонов: "до 50", "от 50 до 100", "от 100 до 150", "больше 150".Заполняем каждую группу диапазонов в соответствии с заданным шагом.Выводим на экран полученные диапазоны для фильтра.

Пример:

Массив размеров: [3, 6, 18, 22.5, 30, 34, 35, 38, 40, 45, 46, 50, 52, 53, 54, 55, 57, 59, 60, 67, 70, 76, 90, 99, 104, 110, 118, 160]

Минимальное значение: 3
Максимальное значение: 160

Шаг: (160-3)/4 = 39.25

Диапазоны для фильтра:

до 50от 50 до 100от 100 до 150больше 150

Полученные группы:

До 50: [3, 6, 18, 22.5, 30, 34, 35, 38, 40, 45, 46]От 50 до 100: [50, 52, 53, 54, 55, 57, 59, 60, 67, 70, 76, 90, 99]От 100 до 150: [104, 110, 118]Больше 150: [160]

Таким образом, данный подход позволит гибко разбить данные на группы диапазонов для дальнейшего использования в фильтре.

20 Апр 2024 в 13:23
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир