Vous êtes sur la page 1sur 6

ALGORITMI DE PRIMALITATE

Aram Ramona Clasa a IX-a A

Ciurul lui Eratostene


n matematic, ciurul lui Eratostene este un algoritm simplu i vechi de descoperire a tuturor numerelor prime pn la un ntreg specificat. Este predecesorul algoritmului modern ciurul lui Atkin, un algoritm mai rapid, dar mai complex. A fost creat de Eratostene, un matematician din Grecia antic.

Algoritm
1.Se scrie o list a numerelor de la 2 la cel mai mare numr ce urmeaz a fi testat pentru primalitate. Numim aceast list ,,lista A. 2.Se trece numrul 2, primul numr prim gsit, ntr-o alt list, cea a numerelor prime gsite. Numim aceast list lista B. Se marcheaz 2 i toi multiplii lui 2 din lista A. 3.Primul numr nemarcat din list este un numr prim. Se trece acest numr n lista B. 4.Se marcheaz acest numr i toi multiplii lui din lista A. Marcarea de multipli poate s nceap de la ptratul numrului, ntruct multiplii mai mici au fost deja marcai n paii anteriori. 5.Se repet paii 4 i 5 pn cnd se epuizeaz toate numerele din lista A.

Ciurul lui Atkin


Ciurul lui Atkin este un algoritm de determinare a tuturor numerelor prime mai mici dect un numr natural dat. Algoritmul, cnd este optimizat corespunztor, funcioneaz mai repede dect celebrul ciur al lui Eratostene. Ca procedur general, algoritmul elimina multiplii numerelor prime ridicate la ptrat, spre deosebire de multiplii numerelor prime, ca ca n cazul ciurului lui Eratostene.

Reguli folosite:
1. Algoritmul ignor complet numerele multiplii de 2, 3 i 5 Sunt eliminate numerele pentru care restul mpririi la 60 este: 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58; apoi sunt eliminate numerele rmase, pentru care restul mpririi la 60 este 3, 9, 15, 21, 27, 33, 39, 45, 51, 57; apoi sunt eliminate numerele rmase pentru care restul mpririi la 60 este 5, 25, 35, 55. 2. Toate numerele care mprite la 60 dau unul din resturile 1, 13, 17, 29, 37, 41, 49 sau 53 si au restul mpririi la 4 egal cu 1 sunt prime dac i numai dac numrul soluiilor ecuaiei 4x2 + y2 = n este impar i numrul nu este ptrat perfect. 3. Toate numerele care mprite la 60 dau unul din resturile 7, 19, 31 sau 43 si au restul mpririi la 6 egal cu 1 sunt prime dac i numai dac numrul soluiilor ecuaiei x2 + y2 = n este impar i dac numrul nu este ptrat perfect. 4. Toate numerele care mprite la 60 dau unul din resturile 11, 23, 47 sau 59 si au restul mpririi la 12 egal cu 11 sunt prime dac i numai dac numrul soluiilor ecuaiei 3x2 y2 = n este impar i dac numrul nu este ptrat perfect * x, y sunt numere naturale

Algoritm:
1. Se creeaz lista de numere prime - lista rezultat, care la nceput conine 2, 3 i 5. 2. Se creeaz lista ciurului, care conine numerele naturale de la 1 la numrul dat, toate marcate ca neprime. 3.Pentru fiecare numr n din lista ciurului se urmeaza regulile mentionate mai sus. Daca numarul este prim, atunci el este introdus in lista rezultat. 4.Se pornete cu cel mai mic numr din lista ciurului. 5.Se ia urmtorul numr din lista ciurului marcat drept prim. 6.Se include numrul n lista rezultat. 7.Se ridic numrul la ptrat i se marcheaz toi multiplii valorii obinute ca ne-primi. 8.Se repet paii de la 5 la 8.

Cnd o liter este urmat de un apostrof, nseamn o rotaie cu 90 de grade n sens trigonometric, iar litera fr apostrof nseamn rotaia cu 90 de grade n sens orar. O liter urmat de un 2 (uneori la exponent, ) nseamn rotaia feei cu 180 de grade (indiferent de direcie). Astfel R nseamn faa din dreapta rotit n sens orar, dar R' nseamn faa din dreapta rotit n sens trigonometric. Cnd x, y sau z au apostrof, ele semnific rotaia cubului n direcia opus. Cnd rotaia are un , nseamn c trebuie efectuat de dou.

F (Front, Fa): partea cu faa spre rezolvitor B (Back, Spate): partea opus feei U (Up, Sus): partea de deasupra feei D (Down, Jos): faa opus celei de sus L (Left, Stnga): faa aflat la stnga celei din fa R (Right, Dreapta): faa aflat la dreapta celei din fa f (Front two layers, dou niveluri din fa): nivelul din fa i nivelul median corespunztor b (Back two layers, dou niveluri din spate): nivelul din spate i nivelul median corespunztor u (Up two layers, dou niveuri de sus) : nivelul de sus i nivelul median corespunztor d (Down two layers, dou niveluri de jos) : nivelul de jos i nivelul median corespunztor l (Left two layers, dou niveluri din stnga) : nivelul din stnga i nivelul median corespunztor r (Right two layers, dou niveluri din dreapta) : nivelul din dreapta i nivelul median corespunztor x (rotaie): rotaie n sus y (rotaie): rotaie spre stnga z (rotaie): rotaie pe partea din dreapta

Pasul 1 (Crucea): Nu exist algoritmi pentru acest pas. Ar trebui s ncercai singuri s rezolvati intuitiv. Pasul 2 (Colturile primului strat): Galben n fa: F U F. Galben la dreapta: R U R. Galben n sus: (R U2 R U)( R U R). Pasul 3 (Stratul 2): Muchia spre stnga: (U L U L)(F L F L). Muchia spre dreapta: (U R U R)(F R F R).

Pasul 4 (Formarea unei cruci albe): Dac exist crucea deja format, putei sri peste acest pas. Pentru linie: (F R U)(R U F). Pentru L: (F U R)(U R F). Pentru punct: Aplicm unul din cei doi, iar apoi pe cellalt. Pasul 5 (Formarea corecta a crucii albe): Dac toat faa e alba deja, putei sri peste acest pas. Pentru 3 muchii n sensul acelor de ceasornic: (R U2 R U)(R U R) (cu muchia corect n fa). Pentru 3 muchii n sens invers acelor de ceasornic: acelasi algoritm de 2 ori. (cu muchia corecta n fa). Cnd doua opuse sunt corecte si 2 incorecte. Aplicm o dat algoritmu Pasul 6 (Aducerea fetei de sus la o singura culoare alb):l i vedem n care din cazuri ne aflm. Albul ndreptate spre dreapta: (R D R D)(R D R D). Albul ndreptat spre spate: (D R D R)(D R D R). Pasul 7 (Permutarea a 3 colturi): Pentru 3 coluri n sensul acelor de ceasornic: (R2 B2 R)(F R B2)(R F R) (colul corect n fa-stnga). Pentru 3 coluri n sens invers acelor de ceasornic: acelai algoritm de 2 ori. (colul corect fa-stnga).