Documente Academic
Documente Profesional
Documente Cultură
Problema 2: Se citete un numr ntreg n. S se realizeze un algoritm care s afieze cel mai mic i cel mai mare divizor propriu al numrului n. De exemplu dac se citete pentru n valoarea 12 atunci algoritmul va afia 2 6 , iar n cazul n care se citete n = 13 se va afia 13 nu are divizori proprii. n pseudocod, algoritmul de rezolvare este: ntreg n,i , OK Evoluia variabilelor Iniial n=14, OK=0, citete n i=2 OK0 2<=[14/2] Adevarat pentru i 2,[n/2] execut 14%2=0 Adevarat | dac (n % i = 0) atunci Se afiseaza cel mai mic divizor propriu este | | scrie cel mai mic divizor propriu este ,i, 2 cel mai mare divizor propriu este 7 | cel mai mare divizor propriu este , [n/i] i=[14/2], OK=1 | i[n/2], OK1 i=7+1 | | | 8<=[14/2] Fals dac OK=0 atunci Alg. continua cu instructiunea daca OK=0 | scrie n, nu are divizori proprii 1=0 Fals | Stop --- 1/2 ---
February 14, 2014 Problema 3: (Primalitatea unui numr ) Se citete un numr ntreg n. S se realizeze un algoritm care s verifice dac numrul n este prim. De exemplu dac se citete pentru n valoarea 12 atunci algoritmul va afia numar NEPRIM, iar n cazul n care se citete n = 13 se va afia mesajul numar PRIM. n pseudocod algoritmul de rezolvare este: ntreg n, i, prim Obs. Algoritmul folosete o structur citete n repetitiv cu numr cunoscut de repetiii, n dac n = 1 sau n=0 atunci care se caut divizori proprii. n caz c se | scrie numar NEPRIM gasesc divizori, numrul nu este prim, altfel | altfel numrul este prim. Se folosete o variabil | | prim 1 //presupunem ca numrul este prim semafor numit prim care iniial are | | pentru i 2, [n/2] execut valoarea 1 i se modific n 0 doar dac | | | dac (n % i = 0) atunci se gsesc divizori. | | | | prim 0 //am gsit divizori, nr nu e prim | | | | i[n/2] | | | | | | | | | dac prim = 1 atunci | | | scrie n,numar PRIM | | |altfel | | |scrie n, numar NEPRIM | | | | | | PROBLEME PROPUSE 1. Se citete un numr ntreg n. S se realizeze un algoritm care s calculeze i s afieze numrul de divizori proprii ai numrului n. 2. Se citete un numr ntreg n. S se realizeze un algoritm care s afiseze toate numerele perfecte mai mici sau egale cu n. Spunem c un numr este perfect dac este egal cu suma divizorilor si, far el nsui.Ex. n=6=1+2+3 3. Se citesc dou numere ntregi a i b. S se realizeze un algoritm care s verifice dac cele doau numere sunt prietene. Spunem ca dou numere sunt prietene dac suma divizorilor proprii ai unui numr este egal cu celalalt i invers. 4. Un numar se numeste aproape prim daca poate fi scris ca produs de 2 numere prime distincte. Sa se determine daca un numar dat este aproape prim. Ex. n=14=2*7 5. * Sa se afiseze toate numerele prime din intervalul [a,b]. 6. * Sa se afiseze toate perechile numere naturale x si y din intervalul [1,n] care sunt prime si consecutive in multimea numerelor impare. De exemplu, de la 1 la 15 avem perechile: (3 5) (5 7) (11 13) 7. * Un numar natural n se numeste superprim daca atat el cat si toate prefixele sale sunt numere prime. Numarul 2399 este superprim deoarece 2399, 239, 23 si 2 sunt numere prime. Pentru un numar natural n citit de la tastatura, aflati toate numerele superprime mai mici sau egale cu n. 8. * Se citesc 2 numere naturale a si b. Afisati toate perechile de numere x si y din intervalul [a,b] care au proprietatea ca au acelasi numar de divizori.