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

Scrieţi definiţia completă a subprogramului C/C++ modificare, care are doi parametri, v şi n, prin care primeşte un tablou unidimensional cu maximum 10000 de numere naturale nenule şi, respectiv, numărul de elemente din tablou. Subprogramul rearanjează elementele tabloului astfel încât toate valorile prime să se afle pe primele poziţii, iar valorile care nu sunt prime, în continuarea celor prime.
Ordinea în cadrul ambelor secvenţe (numerele prime şi cele care nu sunt prime), poate fi oricare.

Răspunsuri la întrebare

Răspuns de express
1
void modificare(int v[], int n)
{
    int i, j, k1 = 0, k2 = 0, x, v1[10005], v2[10005];
    bool prim;
    for(j = 0; j < n; j ++)
     {
         x = v[j];
         prim = true;
         for (i = 2; i * i <= x; i ++)
          if(x % i == 0)
           {
               prim = false;
               break;
           }
          if(prim) v1[k1 ++] = x;
              else v2[k2 ++] = x;
     }
     for(j = 0; j < k1; j ++)
      v[j] = v1[j];
     for(j = k1; j < n; j ++)
      v[j] = v2[j - k1];
     return;
}


eleva10: return ce?
express: este vorba de un subprogram....ce incepe cu void...instructiunea return; - este o comanda optionala...poti s-o scoti, functioneaza oricum
eleva10: a da. corect. nu am fost atenta
eleva10: multumesc mult
Răspuns de Razzvy
1
Ai solutia in atasament.
Anexe:
Alte întrebări interesante