от правого края


от правого края записи к левому, от a0 к ak. Можно предложить иной вариант (назовем его Dec_P_v2), когда разложение формируется в противоположном порядке - слева направо, от ak к a0. Для этого следует * подобрать такое значение k, чтобы выполнялось неравенство pk+1>n?(|Ap|-1)pk, где |Ap| - мощность алфавита Ap; для чего потребуется использовать линейный цикл; * затем, на каждом очередном шаге k, определять значение множителя ak из алфавита Ap, минимизирующее разность (n-ak*pk). Ясно, что этот алгоритм, в сравнении с предыдущим, более трудоемок. Однако в ряде частных случаев он вполне жизнеспособен. Так, при p=2 в алфавите A2 только два элемента, 0 и 1. Поэтому и вычисления столь элементарны, что их несложно проделывать в уме (вспомним: таблицу степеней 2 мы давно выучили наизусть - Занятие B1). Для того же примера с числом n=412: * подбираем (в цикле!) k=8, т.к. 29>412?28; * и далее цепочка вычислений такова - 41210=1*28+156 =1*28+1*27+28
Индекс
Элементарные функции    Линейные уравнения    Нелинейные уравнения    Случайные числа


Hosted by uCoz