Verificare număr prim – Programare în C++

2056
vizionări
Verificare număr prim – Programare în C++
5 (100%) 4 voturi

Adeseori, în diverse probleme la informatică, vei fi nevoit să afli dacă un număr este prim. Pentru a afla dacă un număr n este prim, poți folosi testul următor:

Structura repetitivă for va verifica pe rând, dacă vreun număr cuprins între 2 și jumătatea lui n este divizor al numărului n (pentru că nu pot exista divizori proprii mai mari decât jumătatea numărului). Dacă se găsește cel puțin un divizor al numărului, înseamnă că n nu este prim.

Pentru a optimiza codul, puteți înlocui n/2 cu sqrt(n) – adică rădăcina pătrată a numărului, deoarece s-a demonstrat matematic că, dacă un număr nu are niciun divizor mai mic decât rădăcina sa pătrată, atunci acel număr este prim. Pentru a putea folosi instrucțiunea sqrt(), trebuie să adaugi bilbioteca math.h în program (vezi prima aplicație).

Aplicații

Să se verifice dacă un număr n de tip întreg citit de la tastatură este prim.

Se citesc mai multe numere de la tastatură până la întâlnirea valorii 0. Să se determine câte dintre numerele citite sunt prime.

Se citește un vector cu n elemente de la tastatură. Să se afișeze pe ecran toate elementele care au cel puțin un divizor propriu (care nu sunt prime).

Probleme propuse

  1. Se dă un număr x de la tastatură, apoi se citesc mai multe numere de la tastatură până la întâlnirea valorii 0. Să se afle dacă printre numerele citite se află ce puțin x numere prime.
  2. Se dă un vector cu maxim 20 de elemente de tip întreg. Pentru fiecare număr prim, să se calculeze și să se afișeze produsul cifrelor.
  3. Se citește un număr natural n de la tastatură. Să se afle dacă suma cifrelor sale este un număr prim.

LĂSAȚI UN MESAJ

Please enter your comment!
Please enter your name here