чтобы зря не грузить проц.
Чтобы не грузить, можно 10,11 и 12 строки вообще не считать, а посчитать калькулятором для каждого диапазона значение делителя N. Его и применять. Как оно отразится на параметрах сигнала, не ясно. Но избавляем процессор от расчетов (особенно от деления), не нужно загружать для каждой частоты, регистры делителя. Достаточно лишь при смене диапазона.
В общем, если малость напрячься, можно увидеть, что вариантов получения одних и тех же коэффициентов много.
Ну и по ссылке, которую тут давали раньше, желательно, чтобы вот та дробь, которую считаем в 13-18 строках была подальше от целочисленной, т.е. желательно, чтобы не было так:
23,0000000001 (если я правильно понял из того опуса), а лучше, чтобы было 22,999999999
Хотя, конечно не правильно выразился.. Что первое, что второе число одинаково близки к целочисленному, поэтому правиленее написать, чтобы дробная часть была побольше.