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

Cerinţa Scrieţi definiția completă a subprogramului C++ zero care are 2 parametri: n – prin care primește un număr natural și v, prin care primeşte un tablou unidimensional cu 2•n elemente, numere întregi cu cel mult 4 cifre. Numărul de elemente pare este egal cu numărul de elemente impare. Elementele au indici de la 1 la 2•n. Subprogramul modifică tabloul astfel încât elementele impare să aibă indici impari, iar elementele pare să aibă indici pari. Tabloul modificat este furnizat tot prin parametrul v.
Restricţii şi precizări 2 numele subprogramului cerut este zero
parametrii sunt, în această ordine: n, v
Exemplu
Dacă n=5 şi v=(4, 5, 0, 9, 10, 7, 15, 3, 8, 10), atunci după apel o soluție posibilă este v=(5, 4, 9, 0, 15, 10, 7, 8, 3, 10).

Răspunsuri la întrebare

Răspuns de express
12
void zero(int n, int v[])
{
    int w1[33]={0}, w2[33]={0}, a=0, b=0, k1=0, k2=0;
    for(int i=1;i<=2*n;i++)
    {
        if(v[i]%2==0) w1[++k1]=v[i];
                 else w2[++k2]=v[i];
    }
  
  for(int i=1;i<=2*n;i++)
    {
        if(i%2==0) v[i]=w1[++a];
              else v[i]=w2[++b];
    }
  return;
}

Alte întrebări interesante