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

Scrieţi definiția completă a subprogramului C++ valuri care are 2 parametri: n – prin care primește un număr natural, v, prin care furnizează un tablou unidimensional cu 2*n elemente, valori naturale distincte din intervalul [1,2*n].

Subprogramul construieşte tabloul v astfel încât, în acesta, şirul elementelor impare să fie strict crescător, iar şirul elementelor pare să fie strict descrescător. Primul element al tabloului este impar, iar două elemente cu aceeaşi paritate nu pot ocupa poziţii consecutive în tablou.

Exemplu
Dacă n=4 atunci, după apel, v=( 1, 8, 3, 6, 5, 4, 7, 2).

Răspunsuri la întrebare

Răspuns de sfechisalin
21
void valuri(int n, int * v)
{
 for(int i = 0 , j = 1; i < 2*n ; i +=2, j +=2)
  v[i] = j;
  for(int i = 1 , j = 2*n ; i < 2*n; i += 2, j-=2)
   v[i] = j;
 }
Alte întrebări interesante