Yechim 8. 1- kalkulyatorda yozilgan qiymatni K1 deb belgilaylik, (shunga o'xshash qolganlarini K2, K3 kabi belgilaymiz) keyinchalik agar K1=K1-1 deb yozilsa demak birinchi kalkulyatordagi sondan 1 ni ayirgan bo'lamiz, huddi shunday K1=K1÷2 yozilsa qiymatni 2 ga bo'lgan bo'lamiz.
Quyidagi 3 ta amallar guruhini "qadam" deb nomlaylik:
1) agar K1 toq bo'lsa: K3=K3×K2 va K1=K1-1 (demak K1 juft bo'lsa bu bosqich bajarilmaydi)
2) K2=K2×K2;
3) K1=K1÷2;
Endi har bir kalkulyatorga quyidagi qiymatlarini yozib olamiz:
K1 = n;
K2 = x;
K3 = 1;
va K1>0 bo'lsa yuqoridagi "qadam"ni takrorlayveramiz. Bundan yakuniy natija K3 da hosil bo'ladi. Jami "qadam"lar soni esa taxminan [log(n)]+1 ga teng bo'ladi (bu yerda log - ikki asosga ko'ra logarifm).
Izoh: Asosiy g'oya ikkilik sanoq sistemasi: Istalgan natural sonni ikkilik sanoq sistemasida yozishimiz mumkin, bu esa o'sha sonni 2 ning qaysidir darajalari yig'indisi yordamida ifodalash mumkin degani. Masalan 7 = "111" = 2^2 + 2^1 + 2^0. Demak biz x^7 uchun x, x^2 va x^4 ni bilishimiz yetarli ekan, bular esa o'zidan bitta oldingisini o'ziga ko'paytirilishi orqali hosil bo'ladi. Biz K1 dan n ni ikkilik sanoq sistemasiga yoyishda, K2 dan x ni 1, 2, 4, 8, 16, ..., 2^k darajalarini hosil qilishda va K3 dan natijani saqlashda foydalanayapmiz.
Quyidagi 3 ta amallar guruhini "qadam" deb nomlaylik:
1) agar K1 toq bo'lsa: K3=K3×K2 va K1=K1-1 (demak K1 juft bo'lsa bu bosqich bajarilmaydi)
2) K2=K2×K2;
3) K1=K1÷2;
Endi har bir kalkulyatorga quyidagi qiymatlarini yozib olamiz:
K1 = n;
K2 = x;
K3 = 1;
va K1>0 bo'lsa yuqoridagi "qadam"ni takrorlayveramiz. Bundan yakuniy natija K3 da hosil bo'ladi. Jami "qadam"lar soni esa taxminan [log(n)]+1 ga teng bo'ladi (bu yerda log - ikki asosga ko'ra logarifm).
Izoh: Asosiy g'oya ikkilik sanoq sistemasi: Istalgan natural sonni ikkilik sanoq sistemasida yozishimiz mumkin, bu esa o'sha sonni 2 ning qaysidir darajalari yig'indisi yordamida ifodalash mumkin degani. Masalan 7 = "111" = 2^2 + 2^1 + 2^0. Demak biz x^7 uchun x, x^2 va x^4 ni bilishimiz yetarli ekan, bular esa o'zidan bitta oldingisini o'ziga ko'paytirilishi orqali hosil bo'ladi. Biz K1 dan n ni ikkilik sanoq sistemasiga yoyishda, K2 dan x ni 1, 2, 4, 8, 16, ..., 2^k darajalarini hosil qilishda va K3 dan natijani saqlashda foydalanayapmiz.