Cerinţa
Scrieţi definiția completă a subprogramului shift
care primește prin intermediul parametrului n
o valoare naturală nenulă (n≤100
), iar prin intermediul parametrului x
, un tablou unidimensional cu n
componente. Fiecare componentă a acestui tablou este un număr întreg care are cel mult 8
cifre.
Subprogramul permută circular cu o poziţie spre stânga primele n
elemente ale tabloului x
și furnizează tabloul modificat tot prin parametrul x
.
Restricţii şi precizări
0 < n <= 100
- numele subprogramului cerut este
shift
- parametrii sunt, în această ordine:
x
,n
- tabloul
x
are elementele indexate de la zero
Exemplu
Dacă inițial n=6
și x= (12, 7, 6, 3, 8, 5)
, după apel tabloul devine x= (7, 6, 3, 8, 5, 12)
.
Important
Soluţia propusă va conţine doar definiţia subprogramului cerut. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.
void shift(int a[] , int n) { int b=a[0]; for(int i = 1 ; i < n ; ++i) { a[i-1]=a[i]; } a[n-1]=b; }