Citat:
anmihim:
moj sestric je u osnovnoj skoli dobio zadatak "kako da rucno izvadi kvadratni koren nekog broja"
Evo probacu da objasnim. Nadam se da necu da napravim veliku zbrku ko sto umem.
Elem, algoritam. recimo da nam je dat broj 196.1 iz koga treba izvaditi kvadratni koren.
Pocev od decimalne tacke ulevo i udesno, broj se podeli na grupe od po dve cifre. Dakle: (podelu sam oznacio zapetama)
1,96.10,00,00,...
(grupe po dve nule ne moraju da se pisu, videce se kasnije)
Prva, "najlevlja" grupa (u kojoj je samo cifra 1) se obradjuje na sledeci nacin: Treba odgovoriti na pitanje koja je najveca cifra koja dignuta na kvadrat daje broj manji ili jednak najlevljoj grupi? U ovom slucaju odgovor je 1 i to je prva cifra rezultata. Potpisuje se ovako:
Code:
1,96.10 = 1
1
---
pri cemu je ona donja jedinica nastala od 1*1
Potpisana cifra se oduzme od prve grupe, rezultat napise ispod i dopise sledeca grupa:
Code:
1,96.10 = 1
1
---
96 : 2 x * x
ovde je dvojka dobijena kao 2 * (ono sto za sada stoji u rezultatu). x se odredjuje iz pitanja: koja je najveca cifra takva da kada se stavi na mesto x i dobijeni brojevi (2x i x) pomnoze, daje broj manji ili jednak 96. U ovom slucaju (ocigledno namontiranom) odgovor je 4. 4 kalemimo na rezultat, prepisujemo sledecu grupu od dve cifre, stavljamo decimalnu tacku posto smo u 'obradi' broja kog korenujemo stigli do decimalne tacke i potpisujemo dalje:
Code:
1,96.10 = 14.
1
---
96 : 2 4 * 4
96
----
10 : 28x * x
Ovde je 28 dobijeno kao 2x14. Istim pitanjem kao malopre utvrdjujemo da je jedina cifra x koja ispunjava uslov zapravo nula. Na ovaj nacin moze se dobiti proizvoljan broj cifara. Nadam se da mozes da pokupis ideju i da objasnis.
Code:
1,96.10 = 14.002
1
---
96 : 2 4 * 4
96
----
10 : 280 * 0
0
---
1000 : 2800*0
0
------
100000 : 28002x2
56004
---------
itd...
** E da, sad sam video da code tag unistava vodece razmake (prilicna besmislica!) tako da brojevi nisu lepo potpisani jedan ispod drugog. Nadam se da se ipak vidi sta treba.