OPERATII CU VECTORI
O variabila de tip tablou nu poate fi citita sau scrisa in intregime. In Turbo Pascal7.0 Se pot face
atribuiri intre variabile de acelasi tablou. Dar, e preferabil sa se lucreze pe componente .Cu
componentele unui tablou Se pot face toate operatiile ce Se pot face cu orice variabila de acel tip
(afisare, citire, atribuire etc)
[Link] unui vector
Aceasta inseamna citirea numarului n de componente, intr-un ciclu for, de pilda. De fapt avem de citit
componenta numarului i, cu i de la 1 la n. Deci putem scrie:
for i:= 1 to n do
begin
write('dati x[',x,']=');
readln(x[i]);
end;
[Link] unui vector
cand trebuie sa afisam vectorul, adica toate componentele sale efective numarul acestora este
cunoscut. Afisarea se realizeaza ciclic si poate fi astfel:
-fiecare element pe un rand(folosita mai ales cand avem vectori si siruri de caractere)
for i:1to n do
writeln(x[i]);
-toate elementele pe acelasi rand, despartite de virgula si/sau spatii(in cazul valorilor numerice)
for i:=1 to n do
write(x[i],',');
writeln;
[Link] unui vector in alt vector
vom inversa vectorul x in vectorul y, de acelasi tip cu x, deci vom pune in componenta y[1] pe x[n],in
componenta y[2] pe x[n-1],im componenta y[n] pe x[1]
for i :=1 to n do
y[i]:=x[n+1-i]
[Link] unui vector in el insasi
Va trebui sa schimbam prima componenta cu ultima,pe a doua cu penultima s.a.m.d.,pana la mijloc
vom intelege n div 2 indiferent daca n este par sau [Link],va trebui sa parcurgem vectorul
pana la n div 2 intershimband pe x[i] cu x[n+1-i];
for i:=1 to n do div 2 do
begin
aux:=x{i];
x[i]:=x [n+1-i];
x[n+1-i]:=aux;
end;
[Link] elementului minim dintr-un vector
Aceasta problema se rezolva astfel:consideram minim primul element,apoi parcurgem restul vectorului
si,ori de cate ori gasim un element mai mic actualizam minimul la valoarea acelui element
minim:=x[1]
for i:=2 to n do
if x[i]<x[1] then minim:=x[i];
In acest moment,la sfarsitul ciclului,variabila minim(de acelasi tip ca si componentele x) contine cel
mai mic element din vector
[Link] elementului maxim dintr-un vector
Se actualizeaza maximul intr-o variabila [Link] este asemanator cu cel de [Link]
maximul cu primul [Link] intr-un ciclu pozitiile celorlalte elemente i pentru fiecare
element v[i],daca v[1] mai mic decat v[i],atunci v[i] devine noul maxim.
[Link] simultana a minimului si maximului dintr-un vector
Pentru a realiza aceste lucruri simultan se procedeaza dupa cum urmeaza:
minim:=x[1];maxim:=x[1];
for i:= 2 to n do
begin
if x[i]<minim then minim:=x[i]
if x[i]>maxim then maxim:=x[i]
end;
Evident daca vectorul contine doar un singur element acela va fi si maxim si minim