Как найти функцию, возвращающую номер диапазона? Не знаю, правильно ли в заголовке описал суть вопроса, но дело вот в чем: Имеются, значит, числа k и n:k∈Nn∈N0Нужно найти такую функцию f(x), при которой бы происходило что-то типа этого: Берем например k = 100, а n = 3. Тогда x∈[0,100]. На диапазоне [0, 33) функция должна возвращать 0, На диапазоне [34, 66) функция должна возвращать 1, На диапазоне [67, 100] функция должна возвращать 2. Как найти эту функцию?
Для решения данной задачи можно воспользоваться следующей формулой:
f(x) = floor((x - 1)/(k/n))
Где floor — функция округления вниз, x — число в диапазоне от 0 до k, k — верхняя граница диапазона, n — количество интервалов.
Подставив значения k = 100, n = 3, получим:
f(x) = floor((x - 1)/(100/3))
Пример:
f(50) = floor((50 - 1)/(100/3)) = floor(49/33.333) = floor(1.47) = 1
Таким образом, функция f(x), возвращающая номер диапазона, будет работать по вашему условию.