Definitia, declaratia si lungimea unui tablou unidimension... Minimul, maximul si numarul de aparitii intr-un vector Cautarea secventiala – toate aparitiile Cautarea secventiala – prima aparitie Cautarea secventiala – ultima aparitie Cautarea secventiala – verificarea aparitiei Permutarea circulara spre stanga si spre dreapta cu o pozitie Permutarea circulara spre stanga si spre dreapta cu k poz... Stergerea si inserarea unei valori dintr-un vector Sortarea vectorilor Interclasarea vectorilor Cautarea binara Vectorul caracteristic
Se numeste o variabila capabila sa retina o colectie de valori de acelasi tip. Declaratia unui vector : Se numeste lungimea unui vector o variabila care va retine numarul efectiv de celule pe care programul le prelucreaza la un moment dat (ex: ; pentru variabila x).
min:=x[1]; nr:=1; For i:=2 to n do if x[i]max then begin max:=x[i]; nr:=1; end else if x[i]=max then nr:=nr+1; Writeln (max:1:3,’ ‘,nr);
Sa se afiseze, separate prin spatiu, toate aparitiile valorilor pare.
for i:=1 to n do if x[i] mod 2=0 then write (i,’ ‘);
Sa se afiseze prima aparitie a unei valori cu o singura cifra. Atentie! Nu avem siguranta gasirii acesteia.
p:=0; For i:=1 to n do if x[i]<=9 then begin p:=i; break; end; If p>0 then writeln (‘Prima aparitie a unei cifre este pe pozitia ‘,p) else writeln (‘Nu exista’);
Sa se afiseze ultima aparitie a unui numar ce are prima cifra para.
u:=0; For i:=n downto 1 do begin aux:=x[i]; while aux>9 do aux:=aux div 10; if aux mod 2=0 then begin u:=i; break; end; end; if u<>0 then writeln (‘Ultima aparitie a unui numar cu prima cifra para,’ ‘,u) else writeln (‘Nu exista’);
Sa se precizeze daca in tablou exista numere impare.
ok:=false; For i:=1 to n do if x[i] mod 2=1 then begin ok:=true; break; end; if ok=true then writeln (‘Exista numere impare’) else writeln (‘Nu exista numere impare’);
aux:=x[1]; For i:=2 to n do x[i-1]:=x[i]; x[n]:=aux;
aux:=x[n]; For i:=n-1 downto 1 do x[i+1]:=x[i]; x[1]:=aux;
k:=k mod n; For i:=1 to k do begin aux:=x[1]; for j:=2 to n do x[j-1]:=x[j]; x[n]:=aux; end;
k:=k mod n; For i:=1 to k do x[n+i]:=x[i]; For i:=1 to n do x[i]:=x[k+i];
k:=k mod n; For i:=1 to k do begin aux:=x[n]; for j:=n-1 downto 1 do x[j+1]:=x[j]; x[1]:=aux; end;
k:=k mod n; For i:=1 to (n-k) do x[n+1]:=x[i]; For i:=1 to n do x[i]:=x[n-k+i];
For i:=p to n-1 do a[i]:=a[i+1]; n:=n-1;
For i:=n downto p do a[i+1]:=a[i]; n:=n+1; a[p]:=v;
For i:=1 to n-1 do begin r:=I; for j:=i+1 to n do if x[j]
For i:=1 to n-1 do for j:=i+1 to n do if x[j]
i:=1; j:=1; While (i<=n) and (j<=m) do if x[i]
gasit:=false; i:=p; j:=q; While i<=j do begin m:=(i+j) div 2; If v=x[m] then begin gasit:=true; break; end else if v
Consideram ca vectorul x1, x2, … , xn contine doar cifre (n<=10000) Se foloseste vectorul auxiliar v0, v1, v2, … , v9 deoarece {0,1,2, … ,9} este intervalul ordinal in care sunt incadrate valorile din vector
v[i] = - 0, daca valoarea i nu apare in vectorul x - de cate ori apare valoarea I in vectorul x