0% au considerat acest document util (0 voturi)
9 vizualizări2 pagini

Operatii Cu Vectori

Documentul prezintă operații cu vectori în Pascal, inclusiv citirea, scrierea, inversarea și determinarea elementelor minime și maxime dintr-un vector.

Încărcat de

splash
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
9 vizualizări2 pagini

Operatii Cu Vectori

Documentul prezintă operații cu vectori în Pascal, inclusiv citirea, scrierea, inversarea și determinarea elementelor minime și maxime dintr-un vector.

Încărcat de

splash
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca DOCX, PDF, TXT sau citiți online pe Scribd

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

S-ar putea să vă placă și