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

Cate numere prime pentru un numar natural , mai mici sau egale sunt decat el?

Răspunsuri la întrebare

Răspuns de andrei750238
1

#include <iostream>

using namespace std;

int main()

{

int n, prime = 0, neprime = 0;

cout << "Introduceti numarul : ";

cin >> n;

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

 for (int j = 2; j <= i / 2; j++) {

  if (i%j == 0){

   neprime++;

   break;

  }

 }

}

prime = n - neprime;

 cout << endl << prime;

}


andrei750238: Explicatie : E mai usor sa inumar numerele neprime decat pe cele prime
andrei750238: Scris si testat in Visual Studio. Functioneaza fara probleme.
cepariucosminagabrie: multumesc, dar nu prea inteleg. sunt clasa a 9-a abia. Ai putea sa faci din nou dar pentru nivelul meu? te rog!
andrei750238: Brainly limiteaza doar la un raspuns / utilizator/user. O sa incerc sa explic ce face programul aici :
andrei750238: Primele 3 linii de cod presupun ca ai idee ce e cu ele.
Urmatoarele 3 din functia principala declara variabilele si ctesc de la tastatura valoarea lui n

for (int i = 1; i <= n; i++){ -> Ia la rand toate numerele naturale de la la n
andrei750238: for (int j = 2; j <= i / 2; j++) {

if (i%j == 0){

neprime++;

break;

} -> Pentru fiecare numar testeaza daca e prim sau neprim. Daca numarul e neprim variabila neprime se mareste cu o unitate. Imediat ce se detecteaza ca numarul nu e prim se trece la urmatorul.
andrei750238: De la 1 pana la n exista doar numere prime si numere neprime. Codul de mai sus isi da seama cate numere neprime sunt intre 1 si n. Se calculeaza numarul de numere prime ( prime = n - neprime)

La sfarsit se afiseaza numarul de numere prime.
cepariucosminagabrie: Multumesc!
Alte întrebări interesante