Напишите наиболее короткие алгоритмы вычисления выражений: x^45, x^21, x^17, x^11 в...

0 голосов
41 просмотров

Напишите наиболее короткие алгоритмы вычисления выражений: x^45, x^21,
x^17, x^11
в выражениях можно использовать лишь сложение, вычитание, умножение. не использовать power


Информатика (101 баллов) | 41 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Используем известный алгоритм, согласно которому нужно:
а) перевести степень в двоичную систему счисления и отбросить самую левую единичку, получая битовую шкалу m.
45₁₀ = 101101₂, отбрасываем левую единицу, m=01101
б) положить результат R равным квадрату основания степени х: R=x²
в) если значение самого левого бита равно 1, домножить R на х. У нас 0.
Далее для каждого последующего бита в порядке слева направо выполнять:
г) Возвести R в квадрат. Если бит единичный, домножить R на х.
В нашем случае:
R=R²x;
R=R²x
R=R²
R=R²x

Окончательно для x⁴⁵: R=x²; R=R²x; R=R²x; R=R²; R=R²x

x²¹) 21₁₀ = 10101₂ ⇒ 0101; R=x²; R=R²x; R=R²; R=R²x
x¹⁷) 17₁₀ = 10001₂ ⇒ 0001; R=x²; R=R²; R=R²; R=R²x
x¹¹) 11₁₀ = 1011₂ ⇒ 011; R=x²; R=R²x; R=R²x

(150k баллов)
0

Там нужно через sqr