Download presentation
Presentation is loading. Please wait.
1
Tipuri structurate Tipul tablou
Spre deosebire de tipurile simple, tipurile structurate sunt combinaţii de alte tipuri. Tipurile structurate sunt: tablou, înregistrare şi mulţime. Tipul tablou Tipul tablou conţine un număr fix de componente de acelaşi tip. Tipul comun al elementelor se numeşte tip de bază al tabloului. Pentru a avea acces la conţinutul componentelor unui tablou, vom folosi poziţia elementului din tablou , numită şi indice. În cazul în care componentele unui tablousunt accesate după un singur indice, tabloul se numeşte vector (sau tablou unidimensional). Dacă elementele sunt accesate după mai mulţi indici, atunci avem de-a face cu un tablou multidimensional. Elementelor tabloului le sunt permise orice operaţii valabile tipului de bază. Ele sunt stocate în zone de memorie continue.
2
În matematică tabloul multidimensional are forma urmatoare:
Tabloul de mai sus se numeşte A şi are m linii şi n coloane. Elementele sale sunt Prin se înţelege acel element care se găseşte în linia i şi coloana j. Observaţii: Nu este obligatoriu ca elementele unui tablou să fie numere reale. Ele pot fi de orice natură: numere întregi, caractere… În matematică tablourile se numesc matrici. Termenul a fost preluat şi în informatică.
3
Date de tip tablou În general o declaraţie de tip de tablou este de forma: array [lista_domenii_indicii] of tipelement unde tip_element este tipul de bază iar lista_domenii_indicii este o listă formată din elemente de forma: valoare_minimă ..valoare_maximă sau numele unui tip subdomeniu. Fiecare element reprezintă valorile limită (inferioară şi superioară) pentru un indice. O astfel de descriere poate să apară într-o declaraţie explicită de tip, cât şi într-o declaraţie de variabile. În acest din urmă caz se spune că respectivul tip de date este anonim. Este însă preferabil, în special din motive de claritate şi documentare, ca orice tip definit de către utilizator să fie declarat explicit. Să considerăm de exemplu următoarea secvenţă de declaraţie: Type VECTOR = array[1..20] of real; Var x: VECTOR; y: array[1..10] of integer; Asupra variabilelor de tip tablou pot fi efectuate numai operaţii de atribuire. Elementele unei variabile tablou vor fi tratate ca şi o variabilă de tipul de bază. Adică, ele pot fi modificate prin atribuire, iar dacă sunt de tip simplu, pot fi citite, afişate sau utilizate ca operanzi în expresii, la fel ca orice variabilă de tip simplu. Un element al unei variabile tablou este identificat prin intermediul numelui variabilei şi al valorilor indicilor elementului respectiv, sub forma: nume [listă-valori-indici] unde nume este numele variabilei tablou iar listă_valori_indici conţine câte o expresie pentru fiecare indice, având un tip compa tibil cu cel al indicelui tabloului.
4
Aplicatii Se citeşte un vector cu n componente (nr. naturale). Se cere să se tipărească valoarea maximă dintre numerele citite. Algoritmul de rezolvare este următorul: - variabilei max i se atribuie valoarea primei componente; - pe rând, se compară valoarea variabilei max cu valorile existente în componenţa tabloului. PROGRAM TEST; TYPE VECTOR=ARRAY [1..9] OF INTEGER; VAR V: VECTOR; I, N, MAX: INTEGER; BEGIN WRITE(‘Introduceti nr. de elemente’); READLN (N); FOR I:=1 TO N DO WRITE (’V[’,I,’]=’); READLN( V[I]); END; MAX:=V[1]; FOR I:=2 TO N DO IF V[I]>MAX THEN MAX:= V[I]; WRITELN( ’ELEMENTUL MAXIM ESTE’, MAX); READLN; END. Se citeşte un vector cu n componente numere întregi. Se cere să se calculeze suma celor n componente. Program suma; Var v:array[1..100] of integer; i,s,n,m:integer; begin write(‘Introduceti nr. de elemente'); readln(n); for i:=1 to n do write('v(',i,')='); readln(v[i]); end; s:=0; s:=s+v[i]; write('suma=',s ); Readln; end.
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.