|
Politica de confidentialitate |
|
• domnisoara hus • legume • istoria unui galban • metanol • recapitulare • profitul • caract • comentariu liric • radiolocatia • praslea cel voinic si merele da aur | |
ELEMENTE DE LIMBAJ PASCAL
Tipuri de date
In limbajele evoluate de programare, fiecare argument, fiecare variabila are un anumit tip bine definit, adica poate lua valori dintr-o multime precizata de valori, multime pe care sunt definite anumite operatii.
2. Clasificarea tipurilor de date
Avem trei categorii de tipuri de date:
Simple
Structurate
Referinta.
Putem clasifica tipurile simple in:
standard (predefinite)
definite de utilizator
sau:
tipuri ordinale si
tipuri reale.
3. Tipurile ordinale (sau scalare) se caracterizeaza prin prezenta functiilor ORD,
SUCC(x) furnizeaza succesorul lui x (daca exista);
Tipul rezultatul este identic cu al lui x in cazul functiilor de mai sus.
ORD(x) furnizeaza numarul de ordine al lui x in multimea respectiva, numaratoarea incepand de la 0. Rezultatul lui ORD este, deci, intreg.
De notat ca oricare doua valori ordinale pot fi comparate intre ele cu operatorii : = (egal), <> (diferit), <, <= (mai mic sau egal), >, >= (mai mare sau egal).
Tipurile simple standard sunt
Tipurile intregi: shortint (-128.. 127), integer (-32.768..32.767), longint (-2.147.483.648. 2.147.483.647), byte (0.255), word (0.65535).
Tipul
caracter:
Tipuri
logice: BOOLEAN (valorile constantelor prededfinite
Tipuri
reale: de exemplu, cel mai folosit, tipul
Aceste tipuri enumerate mai sus, cu exceptia tipurilor reale, sunt si ordinale.
4. Tipuri ordinale definite de utilizator
Tipul enumerat - este o succesiune de identificatori separati prin caracterul " ," (virgula), inclusi intre paranteze. Acesti identificatori se numeroteaza automat cu numere naturale 0, 1, 2, . .
Tipul subdomeniu sau interval - reprezinta o succesiune de valori consecutive extrase dintr-un tip ordinal definit anterior sau predefinit, numit tip de baza. Un tip subdomeniu se defineste sub forma: constanta1..constanta2.
5. Definirea tipurilor
Programatorul isi poate defini tipuri de date proprii. Acestea pot purta un nume sau pot ramane anonime. Cele ce primesc un nume vor fi definite in sectiunea declarativa a unui program (sau a unui subprogram sau unit). Numele unui tip de date este un identificator, iar definirea tipurilor se face astfel:
TYPE id_tip1 = definitie_de_tip_1;
id_tip2 = definitie_de_tip_2;
............
6. Tipuri structurate de date
Tipurile structurate sunt combinatii de alte tipuri, definite prin descrierea tipurilor componente si prin indicarea metodelor de structurare.
Tipurile structurate sunt:
Tipul tablou (array si string);
Tipul inregistrare (record);
Tipul multime (set of ..);
Tipul fisier.
7. Tipul array
Un tablou (ARRAY ) este o structura formata dintr-un numar fixat de componente de acelasi tip, numit tip de baza. Numarul de componente este determinat de numarul de valori ale indicilor, care sunt obligatoriu tipuri ordinale.
Evidentierea variabilelor indexate (de tip tablou) se face in limbajul Pascal prin tipul array, a carui declarare se face ca in diagrama urmatoare:
Tipul ordinal reprezinta tipul indicelui iar tipul de baza este tipul elementelor care formeaza tabloul. Tipul de baza poate fi orice tip al limbajului Pascal, predefinit sau definit de utilizator (cu declaratia TYPE), cu exceptia tipului fisier.
Componentele tabloului sunt toate de acelasi tip, ceea ce inseamna ca un tablou este o structura de date omogena.
8. O clasificare dupa dimensiuni
Tabloul poate fi indexat prin unul sau mai multi indici. Dupa numarul acestora, tablourile pot fi clasificate in :
Tablouri unidimensionale, numite deseori vectori - au un singur indice ;
Tablouri bidimensionale, numite si matrice - au doi indici iar elementele sunt aranjate pe linii si coloane;
Tablouri multidimensionale sau n-dimensionale, unde n³
In memoria calculatorului componentele unei variabile de tip tablou se retin una dupa alta, intr-o zona continua de memorie
9. Declararea variabilelor de tip tablou
Variabilele de tip tablou se pot declara cu
VAR lista_de_variabile : ARRAY [tip_indice1, .] OF tip_baza ;
In acest caz tipul este anonim.
10. Definirea unui tip tablou cu nume
TYPE nume_tip_tablou = ARRAY [tip_indice1, .] OF tip_baza ;
VAR lista_de_variabile : nume_tip_tablou;
! Observatie: doua variabile sunt de acelasi tip tablou daca apar in aceeasi lista de variabile de tip tablou sau daca sunt declarate ca fiind de un tip definit anterior de utilizator in TYPE.
11. Accesul la componentele unui tablou
Accesarea unei componente se face scriind numele variabilei de tip tablou urmata, intre paranteze patrate, de lista expresiilor indiceale, separate prin virgula. Valorile acestor expresii dau numarul componentei din tablou si trebuie sa corespunda cu dimensiunea tabloului.
Variabila [expresie1, ]
|