Sunteți pe pagina 1din 1

14

Algoritmi fundamentali in Java. Aplica{ii

Algoritmi

tu

Exemple
Algoritmul 1, Algoritmul lui Euclid

Algoritmul 2. Ciu Eratostene (?276

Nu existd dovezi sigure pentru nimic din ceea ce se afirmi astdzi despre Euclid, iar uneori se Pune la indoiali chiar gi existenfa acestuia. Se presuPune cd a trdit in jurul anului 300 i.Ch. gi ci a fost un matematician grec, care a predat in Alexandria, Egipt' Se pare ci el a
scris Elementele, o lucrare didacticd exemplard, care sinte-

\ord) a fost prir


considerat fonCa

tizeazd cunogtinfele de la acea vreme ale matematicii grecegti. in a gaptea carte se gisegte algoritmul lui
Euclid. Presupunem ci a gi b sunt doui numere naturale, a ) b, gi ci dorim aflarea celui mai mare divizor comun al lor. Considerim ar = a gi br : b gi definim perechile (mi, ri), astfel incAt ai : mibi * ri, 0 I ri 1bi. Mai departe, vom considera ai * t = bi gi bi + t = ri. Atunci, existi un numdr nafural k, astfel incAt n = 0. Mai mult, dacd rk = 0, cmmdc(a, b) = rr-t.

lucrat mult timl Eypt, gi a fost, d r.urnere prime. F;mantului (care :-arti a lumii, pe arxs un poem ir
:-.Tonomiei; a su

:::;

a inlrodus n

-:: Eratostene".

ir

ji,

)*nitie. Un l :;:rai cu 1 gi cu
Euclid

il
rjj t,;li,

llrll

:- ::-.ursi se nune ,:e:"rifici toate r


1e:rptru:

liill
riiiil
l;iii.

t;l

ALGORITM_EUCLID

l,lii :rIi.
irlit

rjil,

ltil
rlllli

iliini

1. 2. 3.

Citeqte

a,be lN,a)b >

ALGORIT}I_!

at <- A, bt <- b, i <-'). While (bi * 0) Do

1.
bi)

Se scnu

cele coc

4.

3.1. a;*r 1- bi 3.2. b;+ I (- ri (: ai mod 3.3. i<-i+1 End_While ggT(a,b) = r,-t

:. \tarche -; k+iDo
1

+.

ai

_ll -

END ALGORITM EUCLID


Exemple:

an

:.J. .l -t t.

a^

l\hile

I.

a = 294, b = 77 294:3x11+63 17:1x63+14 63=4xT4 + 1 14:2 x 7 + 0

a = 252L, b = 338 252I:1x338+155 338=2 x155+ 28 155 : 5 x 28 + 15 28 : 1 x 15 + 13 15:1x 13+ 2 2+ 1 13:6x 2:2 x 1+ 0

r -J -: -1qd-,.*Y,c

*D -{tGor

q+.ert