Informatică, întrebare adresată de StefanOlaru, 9 ani în urmă

2. Se dă numărul natural n. Câte numere prime mai mici decât n există?
Exemplu: n = 19, se va afişa 7, deoarece avem 7 numere prime mai mici decat 19: 2, 3, 5, 7,
11, 13, 17.
3. Se citesc două numere naturale a şi b. Afişaţi numerele prime din intervalul [a,b].
Exemplu: a=23, b =12, se vor afişa numerele:13, 17, 19, 23.
4. Se citeşte n un număr natural. Afişaţi media aritmetică a divizorilor lui n.
Exemplu: n = 9, se va afişa 4.33.
5. Două numere a şi b se numesc prietene dacă suma divizorilor lui a (fără a) este b iar suma
divizorilor lui b (fără b) este a. De exemplu, a=220 şi b=284 sunt prietene. Scrieţi un program
în care să verificaţi dacă două numere date a şi b , sunt prietene.
6. Se citeşte n un număr natural. Calculati suma divizorilor proprii ai lui n si apoi testaţi dacă
suma este număr prim.
Exemplu: n = 10, se va afişa DA, deoarece suma divizorilor proprii pentru numărul 10 este 7,
care este număr prim.
7. Se dă un număr natural n. Să se calculeze suma şi produsul cifrelor lui n, după care să se
afişeze cmmdc-ul şi cmmmc-ul dintre suma şi produs.
Exemplu: n = 234, suma este 9 şi produsul 24, iar cmmdc-ul este 3 şi cmmmc-ul este 72.
8. Se dă un număr natural n. Să se afişeze suma divizorilor primi ai lui n.
Exemplu: n = 60, se va afişa 10 (2+3+5).
9. Se dă un număr natural n. Să se afişeze divizorii primi ai lui n împreună cu puterea la care ei
apar în descompunerea în factori primi.
Exemplu: n = 60, se va afişa: 2 la puterea 2
3 la puterea 1
5 la puterea 1

Răspunsuri la întrebare

Răspuns de Seckar
3
2. Cu un for mergi de la 2 pana la numarul tau minu unu, pentru ca vrei numere stric mai mici decat acel numar. La fiecare iteratie din for verifici daca nr curent este numar prim. Daca e prim il afisezi.

3. Asta e combinatie a 1 si 2, este exact exercitiul 2 insa in loc sa mergi de la 1 la n-1, o sa mergi de la min(a,b) la max(a,b)

4. Cu un for de la 1 la n, o suma a divizorilor initializata cu 0, si un contor initializat tot cu 0 ca sa numeri cati divizori ai gasit. Apoi pui acel for, daca valoarea din for il divide pe n atunci cresti contorul cu 1 si la suma adaugi divizorul. Dupa ce se termina for, imparti suma la nr de divizori.

5. Un for de la 1 la a-1 pentru a afla, ca la 4. suma divizorilor lui a, analog un for de la 1 la b-1 pentru a afla suma divizorilor lui b, cu un if faci verificarile si gata.

6. Divizorii proprii sunt aia care nu sunt numarul sau 1, gen 10 se divide cu 1, 2, 5, 10, dar 1 si numarul insusi, adica 10, nu se pun, raman 5 si 2. Cu o variabila suma, initializata cu 0, si un for de la 2 pana la n-1, ca sa nu iei si nr in sine,cand gasesti un divizor il adaugi la suma. La sfarsit verifici daca suma e nr prim si gata.

StefanOlaru: da dar fa rezolvarea corecta c++
Alte întrebări interesante