144 9 45MB
Romanian Pages 319 [321] Year 1995
Cuprins l.
8
Noţiu~. 1~ ~ebf~~~~~~!~·u c~;~~~~~~!~~a 'aig·o~il~i-i:
date,
va~i~biie·. ~~Pr~~ii..
. ...
. .. 1.1.1. Date 1.1.2. Variabile
operaţii
1.1.3. Expresii . , . . . . . . . . . . . . . • . • , • . , . ,
1.1 .3.1. Expresii întregi . 1.1.3.2. Expresii reale ........... . , • • • . . 1.1.3.3. Expresii logice . . . . . . . . . . . . 1. 1.3.4. Expresii de tip şir de caractere . . 1. 1 .4. Operaţii . . . . . . . . . . . . . . . . . . 1. 1.4. 1. Operaţii de intrare-ieşire 1.1.4.2. Operaţii de decizie 1. 1.4.3. Operaţii de atribuire
9 11
11 11 12
12 12 13 13 13 13 14 14
2. Principiile programării structurate 2.1. Structuri de baza. Descrierea acestora cu ajutorul schemelor logice 2. 1. 1. Operaţii de intrare-ieşire 2.1.2. Operaţii de atribuire . 2. 1.3. Operaţii de decizie . . . . . . . . . . . . . . . . . . . . 2. 1.4. Reguli de detaliere a unei operaţii complexe . . . 2. 1.5. Structura alternativa 2. 1.6. Structura repetitiv! . . . . . . . . . . . . . 2.2. Structuri de baza. Descrierea acestora cu ajutorul unui limbaj de tip pseudocod . . . . . . . . . . . . . . 2.2.1. Prezentarea limbajului . 2.2.1.1. Variabile . 2.2.1.2. Instrucţiuni 2.3. Aplicaţii . . . . . . . . . . . .
22 22 22 23 27
3. Elemente de baza ale limbajului Pascal . . . . . . . • • • . . .. ~ 3.1. Noţiuni introductive,. . . . . . . . . . . . . . . . . . . 3.1. 1. Evoluţia limbajelor de programare . 3. 1.2. Structura programelor Pascal . . . . . . . . . . . . . . . . . . . . 3. 1.3. Descrierea sintaxei cu ajutorul diagramel6r de sintaxa . 3.2. Vocabularul limbajului , . , . 3.2.1 : Setul de caractere 3.2.2. ldentificatori . . . . . . . . 3.2.3. Separatori şi comentarii . . . . • . • . • . • . • . • . • . . . 3.3. Constante . . . . . . . . . . . . . . . . . . . . . . • . • . • • • • • • • . . . 3.3.1. Constante intregi . . . . . . . . . . . . . , . , . • . , ., ,,. 3.3.2. Constante reale . . . . . . . . 3.3.3. Constante şir de caractere 3.3.4. Constante simbolice . 3.4. Noţiunea de tip de data . . . . . . . . . . . . . . . • 3.4. 1. Tipuri simple standard 3.4. 1.1. Tipul boolean . 3.4. 1.2. Tipul char . . 3.4. 1 .3. Tipuri întregi 3.4. 1.4. Tipuri reale
46 46 46 47 48 50 50 50 51 51 51 52 52 53 53 54 54 54 54 56
15 15 15 16 16 18 18 19
3.5. 3.6. 3. 7. 3.8.
4.
3.4.2. Tipuri ordinale definite de utilizator . . . . . . . . . . 3.4.2.1.Tipul enumerat . . . . 3.4.2.2. Tipul subdomeniu. 3.4.3. Definirea tipurilor . . . . . . . . . . . . . . . • .. .. , Declararea variabilelor .••• . . . . . . . Definirea constantelor ..... . • . •. . . ... , Expresii . . .. .. . Citirea şi scrierea datelor 3.8.1. Citirea datelor . 3.8.2. Scrierea datelor
• .
57 57 58 •• . 58 . • .... 58 . , . 60 60 60 61 61
limbajului Turbo Pascal de atribuire IF ..... . 4.2. 1. IF THEN ELSE . 4.2.2. Forma IF THEN
Instrucţiunile
4. 1. 4.2. 4.3. 4.4. 4.5. 4.6. 4. 7. 4.8. 4.9.
Instrucţiunea Instruc ţ iunea
Instrucţiunea compusă Instrucţiunea vidă .. Instrucţiunea CASE InstruCţiunea WHILE
. REPEAT FOR ..... .. . . . . . . . . . . . . . . .. , . , • , . la capitolele 3 şi 4
Instrucţiunea Instrucţiunea Aplicaţii
5. Tipuri structurate de date . 5.1. Tipul tablou 5.1.1. Tipul ARRAY 5.1.2. TipuL STRING 5.1.2.1. Funcţia COPY . . . . . . . . , . , , • .. • . , .. 5.1.2.2. Funcţia POS . . . . . . . . . ...• .•.•.•• 5.1.2.3. Procedura DELETE 5.1.2.4. Procedura INSERT 5.1 .2.5. Procedura STR 5. 1.2.6. Procedura VA L 5.2. Tipul inregistrare (RECORD) .. 5.2.1. Tipul inregistrare fixă ..... . 5.2.2. Tipul inregistrare cu variante . 5.3. Tipul de date mulţime 5.3. 1. Constructori de tip mulţime . 5.3.2. Operatori ........... . 5.3.3. Constante . . . . . . . . . . . 5.3.4. Constante de tip mulţime 5.4. Aplicaţii la capitolul 5 . 5.4. 1. Tipul ARRAY 5.4.2. Tipul STRING .. 5.4.3. Tipul RECORD . 5.4.4. Tipul mulţime 6. Subprograme . . . . . . . . . . . . . . . . . 6. 1. Conceptul de subprogram . 6.2. Domeniul de vizibilitate a identificatrilor . . . . . . . .• • , • , . 6.3. Proceduri . 6.3.1. Declarare şi apel . . . . . . . . . . . . . 6.3.2. Parametri formali, parametri efectivi 6.3.2.1. Transmiterea parametrilor prin referinţă .. 6.3.2.2. Transmiterea parametrilor prin valoare ..
62 63 64 64 65 66 67 67
68 70 71 76 81 81 81
90 94
95 96 96 97 98 98 98 104
106 107 108 108 110 111 111 118 118 119 122 122 122 123 123 129 130 130
6.4.
Fu ncţii (declarare şi apel) 6.4. 1. Tipul funcţiei . . . .... . . . . . . . . . 6.5. Dezvoltare ascendentă, dezvoltare descendentă 6.5. 1. Dezvoltarea ascendentă . 6.5.2. Dezvoltarea descendentă 6.6. Unităţi de program . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6.6.1. Forma genera l ă şi construcţia unei unităţi de program . 6. 7. Proceduri şi funcţii predefinite 6.8. Parametri formali de tip procedura sau funcţie 6.8. 1. Tipul de date procedural . 6.9. Programarea pe obiecte 6.9.1. Logica şi mecanismul programării pe obiecte 6.9.2. Mecanismul de realizare a programării pe obiecte 6.9.2.1. Sintaxa tipului obiect şi incapsularea . 6.9.2.2. Moştenirea . . . . . . . . . . . . . . . . . . 6.9.2.3. Atribuirea in cazul variabilelor obiect ...... . 6.9.2.4. Proceduri cu parametri formali de tip obiect . 6.9.2.5. Polimorfism . 6. 1O. Aplicaţii la capitolul 6 ... 6.1 O. 1. Proceduri. funcţii. unitati de program, obiecte
133 134 135 135 136 136 136 139 140 140 143 143 144 144 147 148 149 150 154 154
7. Unitatea de program CRT . 7. 1. Memoria video 7.2. Ferestre . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3. Alte proceduri şi funcţii specifice unitllţii CRT 7 4 · · Ap~~l~i~. U~ilai~a· p;og~~~ 7 .4. 1. 1. Procedura DESCHID F 7.4.1.2. Procedura SCRIU F - .. 7.4.1.3. Procedura A D BARA .... 7.4.1.4. Procedura POM"B BARA V 7.4.1.5. Procedura PLIMB- BARA- O 7 .4. 1.6. Procedu ra CURSOR . :- .....•. •••• . 7.4.2. Fereastra obiect ..... . . . . . . . . . . . . •... . •.. 7.4.2.1. Metoda DESCHID 7 .4.2.2. Metoda SALVEZ ... 7.4.2.3. Metoda RESTAUREZ 7.4.3. Meniul obiect 7.5. Aplicaţii la capitolul 7 . . . . . . . . . . . . . . . . . 7 .5.1. ·Aplicaţii ale unităţii de program CAT ... •• • ••• •..
159 159 161 164 167 167 167 167 168 169 170 170 174 174 175 175 177 182 182
8.
187 187 188 191 192 192 193 193 193 194 194 194 194 195 195
de
UTil : · · · · · · · · · ·
Pascal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8. 1. Fişiere text ..... : . . . . . . . . . . . . ·\: ..... . 8.1.1. Crearea ŞI exploatarea fişierelor text . 8.1.2. Citirea variabilelor de t ip char . 8.1.3. Citirea variabilelor de tip string 8. 1.4. Citirea variabilelor de tip numeric 8. 1.5. Scrierea cu format implicit 8. 1.6. Scrierea cu format explicit . . . .... 8.1.6 .1. Scrierea datelor de tip întreg 8.1.6.2. Scrierea datelor de tip real ..... 8.1.6.3. Scrierea datelor de tip caracter . 8.1.6.4. Scrierea datelor de tip string ... 8.1.6.5. Scrierea datelor de tip boolean . 8.1. 7. Alte proceduri şi funcţii care lucreaza cu fişiere text 8.1.7. 1. Procedura APPEND
Fişiere
8. 1. 7. 1. Funcţia EOLN text standard . . . . . . . . . . . 8.1 .8. 1. Fişierele INPUT şi OUTPUT ... .•• • • .. 8.1 .8.2. Fişierul PRN . . . . . . .... . • • • . •. . Validarea operaţiilor de intrare 1 ieşire . 8.2.1. A lte tipuri de validări . . . . . . . . . 8.2.1.1. Validarea naturii datelor ....... . 8.2.1.2 . Testarea naturii numerice a datelor . 8.2.1.3. Testarea naturii alfabetica a datelor Fişiere cu tip . . . . . . . . . . . . . . . 8.3. 1. Crearea fişierelor cu tip .. . ..... . 8.3.2. Procedura SEEK şi funcţia FILESIZE 8.3.3. Adăugarea de articole . . . . . . . . . . . . . . . • Un exemplu de lucru cu un fişier . . . . . . . . . . . . . . • Fişiere fără tip .. . . Aplicaţii la capitolul 8 .................•. • 8.6.1. Aplicaţ ii ale fişiere l or 8.6.1.1. Fişiere text ...... . • . • . 8.6.1.2. F işiere cu tip .... .. • • • • • • . .• • • . •• . 8.6. 1.3. Fişiere fără tip .... • • • • ••• ..• • . • . .. 8.1.8.
8.2.
8 .3.
8.4. 8.5. 8.6.
F işiere
9. Unitatea de program DOS . . . . . . . . . . . . . . . . .• . • . . . , • . •.• . . 9. 1. Prelucrarea datei .. 9.2. Căuta rea unui fişier .... 9.3. Execuţia unui program . 9.4. Probleme propuse 1O.
Grafică
ANEXA
pe calculator . . . . . . . . . . . . . . , . • , . .. • . 10.1. Introducere . . . . . . . . .. 10.2. Iniţializarea modului grafic 10.3. Culori . . . . . . . . . . . . . . . . . . . . . . . ..... 10.4. Coordonate ecran şi reprezentarea punctelor . 10.5. Punct curent. 10.6. Trasarea segmentelor. 1O. 7. Raportul aspect . . . . . . . . . . . 10.8. Desenarea obiectelor grafice ..... . 10.8.1 , Desenarea unei linii frânte . . . . . . . . . . . . . . . . . 10.8.2. Desenarea cercurilor, arcelor de cerc şi de elipsă 10.8.3. Desenarea unor obiecte haşurate 10.9. Afişarea textelor . . . · lO.lO. Tehnici de animaţie 10.11. Fişiere imagine 10.12. Ferestre grafice . . . . . . . . . . . . . . . . . . . . . . . . . • .•. 10.1 3. Elemente de grafică 2D . . . . . . . . . . . . . . . . • , . , . • . 1O. 13. 1. Desenarea graficului unei funcţii 1O. 13.2. Desenarea curbelor plane ....... • , . . ... . 10.13.3.Rotaţii ....... : . . . . . . . . . . . . . .. •. . .• .. 1O. 13.4. Curbe BSPLINE . . . . . . . . . . . . . . . . . . . ••• 10.14. Elemente de grafică 3D ... . .... . 1O. 14. 1. Rotaţia unei figuri in spaţiu ....... . 10.14.2. Reprezentarea unei suprafeţe in spaţiu 1O. 14.3. Coordonatele sferice şi ap l icaţiile lor 10.14.4. Prezentarea integrală a unităţii UTILG 1O. 15. Probleme propuse . Utilizarea meniurilor in limbajul TURBO PASCAL
195 196 196 196 196 198 198 199 199 200 201 204 205 210 223 225 225 225 226 228 230 230 231 231 234 235 235 235 237 242 243 243 244 245 245 246 247 250 254 260 262 265 265 271 275 277 278 285 287 291
295 297
299