Линейные рекуррентные соотношения первого порядка с переменным коэффициентом. к числу, первоначально равному нулю, прибавляется шаг за шагом по единице до получения значения 2^{n}-1, n\geq0. докажите, что при этом потребуется 2^{n}-n-1 переносов единицы в старший разряд.

karrtavaya01 karrtavaya01    1   05.04.2019 00:21    0

Ответы
bodrenkodaria bodrenkodaria  28.05.2020 16:58
Для доказательства можно использовать индук­цию.
Но формулу 2^n - n - 1 можно вывести, исходя лишь из условия задачи. Обозначим через S(n) исследуемое количество переносов и за­метим, что если прибавлением единиц уже получено число 2^n-1 - 1 (на это потребуется S(n-l) переносов), то очередное прибавление единицы потребует n - 1 переносов и приведет к числу 2^n-1, двоич­ная запись которого есть 10...0 (количество нулей после единицы равно n-1).

Далее в процессе достижения числа 11...1 (n единиц) потребуется еще S(n-l) переносов. Получаем рекуррентное уравне­ние S(n) = 2S(n - 1) + n - 1 или

S(n)-2S(n-l) = n-l, (1)

при этом s(0) = 0.

Характеристическое уравнение, соответствующее рекуррентному уравнению (1), имеет вид А - 2 = 0. Общее реше­ние однородного уравнения S(n) - 2S(n - 1) = 0 есть сТ.
Правую часть уравнения (1) можно записать в виде квазиполинома (n-1)*n. Значение 1 не является корнем характеристического уравнения, поэтому (ур. 1) обладает частным решением вида an + X; подставляя это выражение вместо s(n) в (1), получаем an + X - 2(а(n - 1) + X) = n - 1, и, приравнивая в левой и правой частях коэффициенты при первой и нулевой степенях n, имеем а = X = -1. Получаем общее ре­шение уравнения (1): S(n) = C2^n- n- 1. Подбираем значение кон­станты стак, чтобы выполнялось S(0) = 0; для этого должно выпол­няться C •2 - 2 = 0, т. е. C= 1. Итак, потребуется 2^n- n- 1 переносов единиц в старшие разряды.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Математика