Informatică, întrebare adresată de patroleateodor, 8 ani în urmă

se citesc N numere întregi Câte numere dintre cele citite sunt prime și în același timp divizibile cu o cifră k citită de la tastatură​

Răspunsuri la întrebare

Răspuns de Zecmens
0

Răspuns:

#include <iostream>

using namespace std;

bool prim(int x)

{

   if (x < 2)

       return 0;

   if (x % 2 == 0 && x != 2)

       return 0;

   for (int d = 3; d <= x; d += 2)

       if (x % d == 0)

           return 0;

   return 1;

}  

int main()

{

   int n, k,x, nr = 0;

   cin >> n >> k;

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

   {

       cin >> x;

       if (prim(x) && x % k == 0)

           nr++;

   }

   cout << nr;

   return 0;

}

Explicație:

citim n numere dupa care verificam daca x este prim si se imparte la k, in caz de e adevarat numaram si afisam nr, celalalt este algoritmul pentru numere prime, in caz de il doresti si optim poate fi scris asa

bool prim(int x)

{

   if (x < 2)

       return 0;

   if (x % 2 == 0 && x != 2)

       return 0;

   for (int d = 3; d*d <= x; d += 2)

       if (x % d == 0)

           return 0;

   return 1;

}

Alte întrebări interesante