если вести другой интервал: 501-699
dubug: 501-509, 510-599, 600-689, 690-699 - жирный шрифт - лишнее
В сторону уменьшения от идет через десятки. Здесь нужен последний интервал - 600-699. Последнее значение, после которого 6 переходит в 7
07.09.2016 17:54:35
если вести другой интервал: 501-699 dubug: 501-509, 510-599, 600-689, 690-699 - жирный шрифт - лишнее В сторону уменьшения от идет через десятки. Здесь нужен последний интервал - 600-699. Последнее значение, после которого 6 переходит в 7 |
|
|
07.09.2016 09:18:57
![]() Подход по сравнению массивов я и думал реализовать, но запутался в самом процессе(( Ігор Гончаренко, Спасибо за функцию! Однако, она возвращает одно лишнее значение. На уменьшение нужно идти на один шаг раньше Вот диапазон, который я вставил: 778-877 Результат функции: То, что выделил жирным - лишняя итерация В обратную сторону на единицу шаг не нужен. Остальное все супер. Можно это как-то поправить? или нарушится логика функции и лучше потом уже из текстового результата это лишнее значение вырезать? "778-779, 780-799, 800-799, 800-869, 870-877" |
|
|
06.09.2016 12:18:59
Всем добрый день!
Поискав на форуме не нашел ничего про преобразование диапазона чисел в регулярные выражения. Если у кого-то есть - буду благодарен. Ну а пока, решил сделать его сам. В процессе наткнулся на задачку, к которой не могу найти подход. Нужно разбить диапазон чисел по разрядам: Единицы должны переходить в десятки, десятки в сотни. Потом в обратную сторону до конечного значения. Итак: Например есть диапазон: 778 - 877 (99 значений) Необходимо его разбить следующим образом: 778-779 (2 значения) - диапазон до изменения второго разряда (десятки) (меняется с 7 на 8, так как единица обнуляется после значения 9. следующее число будет уже 780) 780-799 (19 значений) - диапазон до изменения первого разряда (после 799 идет 800: первый разряд переходит с 7 на 8 ) Так, как нам не нужен диапазон 9хх (у нас край диапазона - 877 см. условие), то идем в обратную сторону: 800-869 - (69 значений) - диапазон до изменения второго разряда (десятки) (после 869 идет 870) 870-877 - (7 значений) - диапазон до конца. Вот такая интересная нетривиальная задачка. На входе - диапазон значений ( в одной ячейке ОТ в другой ДО), на выходе - 4 диапазона в ячейках В идеале - инструмент должен быть универсальный - диапазоны могут быть четырехзначные, пятизначные и т.п Я начал диапазоны в массивы заносить, потом пытался сравнивать..в итоге запутался окончательно! ) Может есть какая-то готовая математическая функция? Может похожая? я сам адаптирую ее Если есть любители поломать голову - буду благодарен ![]()
Изменено: |
|
|