a_p_12 - 91 12. Tipuri abstracte de dat• în Pascal (...

Info iconThis preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 91 12. Tipuri abstracte de dat• în Pascal ( Unit ). 12.1. Tip abstract de dat • . 3ULQ WLS GH GDWH VH vQ HOHJH R PXO LPH GH YDORUL D , care formeazã domeniul tipului, împreunã FX R PXO LPH GH RSHUDWRUL SH DFHVW GRPHQLX ÌQ FD]XO când elementele domeniului sunt valori compuse din mai multe componente DWRPLFH WLSXO GH GDWH RE LQXW VH QXPHúWH WLS GH GDWH VWUXFWXUDW VDX VWUXFWXU ã de date. Un programator poate sã úL GHILQHDVF ã propriile tipuri de date de care are nevoie în programul sã X 2SHUD LLOH H[LVWHQWH vQ DFHVWH QRL WLSXUL GH GDWH VXQW vQ primul rând cele existente asupra componentelor. În structura definitã de programator, ca entitate de sine stãtãtoare existã însã doar operatorul de atribuire. $GHVHD SURJUDPDWRUXO DUH QHYRLH GH RSHUD LL SURSULX ]LVH Tipul abstract de date (prescurtat TAD ) este un astfel de tip, definit de om în urma unui proces de abstractizare. El este precizat prin:- domeniul TAD; RSHUDWRULL GHILQL vQ DFHVW GRPHQLX Nu intereseazã cum se reprezintã HOHPHQWHOH GRPHQLXOXL vQ FDOFXODWRU úL QLFL FXP se executã RSHUDWRULL DVXSUD GLIHUL LORU RSHUDQ]L SRVLELOL Pentru a specifica un TAD este necesar sã precizãm cele douã elemente DOH WLSXOXL GRPHQLXO úL RSHUD LLOH 'RPHQLXO HVWH SUHFL]DW FD R PXO LPH PDWHPDWLF ã, D . Pentru a VSHFLILFD R RSHUD LH o este necesar sã GHILQLP PDWHPDWLF RSHUD LD o ÌQ JHQHUDO VSUH GHRVHELUH GH RSHUD LD PDWHPDWLF ã vQ SURJUDPDUH RSHUD LD o nu HVWH R DSOLFD LH WRWDO ã; ea are sens numai pentru anumite elemente din D . Valorile SHQWUX FDUH RSHUD LD o are sens satisfac un predicat ϕ QXPLW SUHFRQGL LH SHQWUX 92 RSHUD LD o . Rezultatul efectuã ULL RSHUD LHL o depinde de operanzi, este legat de DFHúWL RSHUDQ]L OHJ ãturã precizatã FX DMXWRUXO XQHL SRVWFRQGL LL GDW ã printr-un predicat ψ . Exemplul 3.1.1. Sã specificãm un TAD " num ã U UD LRQDO ". Domeniul acestui TAD constã GLQ PXO LPHD QXPHUHORU UD LRQDOH QRWDW ã prin Q: Q = {(m,n) ⏐ m ∈ Z, n ∈ N + , m,n prime între ele}. În aceastã PXO LPH YRP VSHFLILFD XUP ã WRDUHOH RSHUD LL 2SHUD LD $GXQ T T T { q := q1 + q2 } 3UHFRQGL D T T ∈ Q ; 3RVWFRQGL D T T T 2SHUD LD 6FDG T T T { q := q1 - q2 } 3UHFRQGL D T T ∈ Q ; 3RVWFRQGL D T T T 2SHUD LD ,QPXOW T T T { q := q1 * q2 } 3UHFRQGL D T T ∈ Q ; 3RVWFRQGL D T T T 2SHUD LD 'LYLG T T T { q := q1 : q2 } 3UHFRQGL D T T ∈ 4 úL T ≠ 0; 3RVWFRQGL D T T T 93 2SHUD LD $WULEF VXV MRV T { q:= sus/jos} 3UHFRQGL D VXV ∈ Z, jos ∈ 1 úL MRV ≠ 0; 3RVWFRQGL D T VXV MRV 2SHUD LD &LWHVWH T {q:= numã U UD LRQDO FLWLW` 3UHFRQGL D GH OD WDVWDWXU ã se introduce un numã U UD LRQDO FD SHUHFKH (numãrãtor, numitor). 3RVWFRQGL D T QXP ã UXO UD LRQDO FLWLW 2SHUD LD 7LSDUHVWH T ^ 6H DILúHD] ã numãrul q} 3UHFRQGL D T ∈ Q 3RVWFRQGL D VH DILúHD] ã pe ecran numãrul q 5HOD LD (VWH]HUR T { Este q egal cu zero ?} 3UHFRQGL D T ∈ Q 3RVWFRQGL D 'DF ã q=0 atunci Estezero=TRUE altfel Estezero=FALSE sfdacã....
View Full Document

This note was uploaded on 08/10/2009 for the course CS UB01005 taught by Professor Ancadoros during the Spring '09 term at 東京大学.

Page1 / 13

a_p_12 - 91 12. Tipuri abstracte de dat• în Pascal (...

This preview shows document pages 1 - 4. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online