Sunteți pe pagina 1din 4

Aplicaţii cu subprograme

Funcţii care verifică o proprietate


1. Afişaţi toate numerele prime <=n. Utilizaţi o funcţie care verifică dacă un număr este
prim.

#include <iostream>

/**

Afişaţi toate numerele prime <=n.

Utilizaţi o funcţie care verifică dacă un număr este prim.

*/

using namespace std;

/**

int nr_prim(int a)

int d;

if(a<2) return 0;

for(d=2;d<=a/2;d++)

if(a%d==0)

return 0;

return 1;

//Met 2

int nr_prim(int a)

int d;

if(a<2) return 0;

for(d=2;d*d<=a;d++)

if(a%d==0)

return 0;

return 1;
}*/

//Met 3

int nr_prim(int a)

int d;

if(a<2) return 0;

if(a==2)

return 1;

if(a%2==0)

return 0;

for(d=3;d*d<=a;d=d+2)

if(a%d==0)

return 0;

return 1;

int main()

int n;

cin>>n;

for(int i=1;i<n;i++)

if (nr_prim(i))cout<<i<<" ";

return 0;

2. Câte numere < n sunt prime cu n? Utilizaţi o funcţie care verifică dacă 2 numere sunt
prime între ele.

3. Afisati toate numerele palindroame din [a,b]. Utilizaţi o funcţie care verifică dacă un
număr este palindrom.

4. Se citesc n valori întregi. Afisaţi toate numerele care fac parte din şirul lui Fibonacci.
Utilizaţi o funcţie care verifică dacă un număr aparţine şirului lui Fibonacci.

#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("date.in");

int fibo(int x)

int t1, t2, t;

t1=t2=t=1;

while(t<x)

t1=t2;

t2=t;

t=t1+t2;

if(t==x)

return 1;

else

return 0;

int main()

int n,a,i;

/// citire date din fisier

fin>>n;

for(i=1;i<=n;i++)

fin>>a;

if(fibo(a)==1)

cout<<a<<" ";

}
fin.close();

return 0;

5. Determinaţi primele n numere perfecte. Un număr este perfect dacă suma divizorilor săi
(mai puţin numărul) coincide cu numărul. ( Ex: 6=1+2+3) Utilizaţi o funcţie care verifică
dacă un număr este perfect.

Rezolvaţi cerinţele de mai jos, stabilind funcţiile necesare pentru rezolvarea acestora.

6. Afisati toate nr. din [a,b] care au suma cifrelor un număr prim.

7. De câte ori apare cifra k în [a,b]?

8. Calculaţi suma numerelor <n care au suma divizorilor (mai puţin numărul) un
număr par.

9. Afişaţi toate numerele de 3 cifre ce îndeplinesc proprietatea: atât ele cât şi oglinditul lor
sunt numere prime.

10. Afişaţi cifra maximă dintre cifrele minime ale numerelor din [a,b].

11. Afisati toate numerele prime de 3 cifre, al caror invers este tot numar prim.

12. Afisati toate numerele superprime de 3 cifre. Un numar este superprim daca el si
toate prefixele lui sunt numere prime.

S-ar putea să vă placă și