Acasă / Prezentare generală Windows / Programare dinamica pascal pentru scolari. Introducere în limbajul de programare Pascal. Nivel de intrare. Factorizarea unui număr în factori primi

Programare dinamica pascal pentru scolari. Introducere în limbajul de programare Pascal. Nivel de intrare. Factorizarea unui număr în factori primi

Mediu de dezvoltare profesională pentru crearea de programe și aplicații de orice nivel de complexitate. Combină simplitatea clasică a lui Pascal cu toate capabilitățile mediului de dezvoltare .NET modern utilizat de dezvoltatorii profesioniști din întreaga lume. În plus, limbajul de programare Pascal este predat într-un curs școlar de informatică, oferind studenților cunoștințe de bază despre operatori și variabile. Astfel, învățarea Pascal abs este mai bună pentru începători decât învățarea altor limbaje de programare.

Cursul de șapte lecții practice video este ideal pentru cei care doresc să învețe cum să realizeze un program în Pascal ABC, indiferent de nivelul lor de calificare. Fiecare lecție are propriul subiect, așa că le puteți urmări fie în ordine, fie selectiv pentru a aprofunda și extinde cunoștințele într-un anumit domeniu.

Lecții Pascal ABC

Lecțiile Pascal ABC prezentate în cursul video se bazează pe dezvoltarea de programe de aplicație și oferă cunoștințe practice. Toate programele pe care le scrieți în timpul cursului video funcționează pe deplin și pot fi folosite în viața de zi cu zi - nu există „apă” sau teorie goală în curs.

Stăpânim interfața editorului și scriem primele noastre linii de cod.


Studiem logica lucrului cu numere și proiectăm un cronometru.


Studiem modul în care un limbaj de programare compilează codul sursă.



Folosim Pascal pentru a găsi o soluție la problema despre școlarița Anna.


Programăm un adevărat sintetizator de muzică virtuală.


Stăpânim funcții matematice complexe și creăm un calculator de inginerie cu drepturi depline.



Creăm agenda telefonică „corectă” pe baza bazei de date.


Lecția 1 - Primul program
Lecția 2 - Numerele prime
Lecția 3 - Compilatoare (Partea 1)
Lecția 3 - Compilatoare (Partea a 2-a)
Lecția 4 - Rezolvarea unei probleme școlare
Lecția 5 - A face un pian
Lecția 6 - Calculator avansat (Partea 1)
Lecția 6 - Calculator avansat (Partea 2)
Lecția 7 - Agenda telefonică convenabilă (Partea 1)
Lecția 7 - Agenda telefonică convenabilă (Partea a 2-a)
Lecția 7 - Agenda telefonică convenabilă (Partea 3)
Lecția 7 - Agenda telefonică convenabilă (Partea a 4-a)
Lecția 8 - Lucrul cu grafica. Sistem de particule (Partea 1)
Lecția 8 - Lucrul cu grafica. Sistem de particule (partea a 2-a)
Lecția 8 - Lucrul cu grafica. Sistem de particule (Partea 3)
Lecția 8 - Lucrul cu grafica. Sistem de particule (partea a 4-a)

Să creăm primul nostru program în PascalABC.NET. Să ne uităm la punctele principale.

PascalABC.NET – SCOALA – Numere prime. Sita lui Eratosthenes

Să ne uităm la cel mai rapid algoritm pentru găsirea numerelor prime. Sita lui Eratosthenes. Experimentați pentru a compara algoritmi. Să ne uităm la câteva funcții și capabilități suplimentare ale limbajului Pascal...

PascalABC.NET – SCOALA – Compilatoare (1.Introducere) – Extragere numere

Să începem să înțelegem compilatorii. Căutăm numere întregi și fracționale în text. Rămâneți pe fază pentru actualizări la această linie!

PascalABC.NET – ȘCOALA – Compilatoare (2. Finalizați evidențierea) – Cuvinte și șiruri

Continuăm să dezvoltăm compilatorul. Învățați să evidențiați cuvintele și liniile.

PascalABC.NET – SCOALA – Rezolvarea unei probleme pentru clasa a VII-a

PascalABC.NET – SCOALA – ♫ Pian + OOP + Klitschko

Să ne dăm seama cum să facem un pian simplu folosind OOP (programare orientată pe obiecte).

PascalABC.NET - SCOALA - 1. Calculator cool cu ​​paranteze. Analizarea expresiilor

Scriem un calculator puternic care analizează paranteze și funcții, cum ar fi sin sau trunc. OOP (Programare orientată pe obiecte).

PascalABC.NET - SCOALA - 2. Calculator cool cu ​​paranteze. Analizarea expresiilor

CONTINUARE!!! Aducem la viață un calculator puternic care analizează paranteze și funcții, cum ar fi sin sau trunc. OOP (Programare orientată pe obiecte).

PascalABC.NET - SCOALA - 1. Agenda telefonica avansata! Căutare rapidă. Indexarea

Cum să implementați căutarea rapidă într-un volum mare de date. Teoria grafurilor. Să o creăm folosind ca exemplu o agenda telefonică.

Probabil că nu există o singură persoană modernă care să nu cunoască limbajul Pascal (elementele de bază ale programării). Și acest lucru nu este surprinzător! Cele mai de bază concepte ale acestui program unic sunt descrise în manualul de informatică pentru școlari.

Acum, în acest secol tehnologia de informație, toată lumea poate desfășura cursuri de auto-tutorial online (prin cursurile „Învățarea limbajelor de programare de la zero”; „Pascal pentru manechini” și altele).

Istoria limbii studiate nu este atât de simplă: Pascal a suferit multe schimbări înainte ca școlari să o vadă în forma în care este predată la clasă. A fost primul limbaj simplu (ord pascal) pentru programare, ajutând la rezolvarea multor probleme practice ale secolului trecut (1970). A fost dezvoltat de un grup de oameni de știință.

Pe măsură ce platformele s-au extins, au fost create noi versiuni ale acestui program, iar Pascal a devenit un limbaj de programare clasic.

Mai jos ne vom uita la ce este Pascal și care sunt principalele sale instrumente. Să luăm în considerare operațiunile și funcțiile programului, caracteristicile sale specifice. Să folosim exemple pentru a înțelege cum funcționează. Să învățăm să scriem și să lucrăm în Pascal.

Ce este limbajul de programare Pascal

Acesta este un program de bază de nivel înalt. Ocupă primul loc în curricula multor școli și universități din Federația Rusă.

Caracteristici ale sistemului PascalABC.NET

Totul se învață prin comparație, așa că să luăm în considerare avantajele acestui program în raport cu un alt limbaj BASIC.

Deci, ce este tipic pentru limbajul Pascal și ce nu este potrivit pentru BASIC:

  1. În primul rând, prezența unui compilator care vă permite să descărcați Pascal pe orice platformă.
  2. În al doilea rând, toate versiunile acestui program sunt compatibile între ele.
  3. În al treilea rând, tipurile de date structurate ajută programatorul să compună cu precizie algoritmul necesar pentru rezolvarea unei probleme practice, protejând-o în același timp.
  4. În al patrulea rând, claritatea și logica interfeței programului: toate comenzile sunt simple și ușor de înțeles.
  5. În al cincilea rând, trecerea la un alt limbaj de programare de nivel superior este destul de simplă.

Exemple de programe pe PascalABC.NET

Suma numerelor întregi introduse

Produsul numerelor întregi

Câte sunt impare dintre cele n introduse?

Protecție de intrare nevalidă

Încheierea a 10 prime puteri din două

Aflați suma cifrelor unui număr întreg pozitiv m

Factorizarea unui număr în factori primi

Pascal pentru începători - Concepte de bază

Să ne uităm la conceptele de bază care ajută la scrierea corectă a unui program în acest limbaj.

Zona de lucru

Cum arată spațiul de lucru?

Acum să ne uităm la elementele de bază: alfabetul și structura.

Alfabetul Pascal

Ce trebuie să știi? Un alfabet este un set de simboluri necesare la alcătuirea unui program.

Ce includ acestea:

  1. Litere mari, mici latine (A, B, C....a,b,c).
  2. Simboluri aritmetice (0, 1, 2...).
  3. Caractere speciale (punctuație, paranteze, ghilimele, semne aritmetice etc.).
  4. Simboluri indivizibile (:=, ˃=…).
  5. Cuvinte funcționale:
  • și – și;
  • matrice – matrice;
  • începe – început;
  • do – executa;
  • else - altfel;
  • pentru – pentru;
  • dacă - dacă;
  • din – din;
  • sau – sau;
  • procedura – procedura;
  • program – program;
  • repetare – repetare;
  • atunci – că;
  • la – înainte;
  • până la – până la (= cât timp);
  • var – variabilă;
  • în timp ce – deocamdată.

Vă rugăm să rețineți: constantele și operațiile nu trebuie să aibă aceleași nume ca și cuvintele funcționale (orice lungime).

Structura programului

Deci, ce este inclus în „ierarhia” acestui program?

În funcție de structura sa, acest limbaj este împărțit în 3 secțiuni:

  • Nume;
  • date;
  • actiuni.

Vă rugăm să rețineți: Variabilele trebuie listate separate prin virgule, iar apoi tipul lor trebuie indicat prin „:”. Completează cuvântul scris cu „;”.

Acțiunile încep cu „început” și se termină cu „sfârșit” cu un punct.

Structura poate fi reprezentată astfel:

Apropo, operatorii sunt separați prin punct și virgulă.

Operatorii scriu, scriu, citesc, citesc

Să aflăm cum au loc ieșirea și intrarea informațiilor.

Concluzie

Nu există operatori de ieșire ca atare în această limbă, dar există cuvinte speciale care ajută la lansarea funcțiilor necesare. Acest scrie, scrie.

Care este principala lor diferență? La introducerea sau ieșirea informațiilor ulterioare după ele: în primul caz, informațiile ulterioare vor fi afișate pe aceeași linie în care este scrisă declarația. Dar în al doilea - la următorul.

Intră

Există și cuvinte pentru introducere: citește, citește(=tasta de citire).

Ele diferă unul de celălalt în același mod ca declarațiile anterioare (în ieșire).

Tip de date întreg

Există 3 tipuri principale:

  1. Întreg.
  2. octet.
  3. Longint.

De asemenea, efectuează acțiuni simple:

  • adăugare – „+”;
  • scădere – „-”;
  • înmulțire - „*”;
  • diviziune – „div”.

În plus, este permisă realizarea de relații și comparații (mai mari sau egale cu - ˃ =).

Tipuri de date reale

Astfel de variabile includ numere fracționale (de exemplu, pi). Aici se numesc reale.

Ce să-ți amintești? Pentru a introduce o formulă fracțională, trebuie să utilizați un punct în loc de virgulă. Pentru a scrie puteri (x * 10 y), 10 este înlocuit cu E și numărul are notația:

Cu ele puteți efectua atât cele mai simple operații aritmetice, cât și mai complexe:

  • rădăcină pătrată – sqrt;
  • valoarea absolută – abs;
  • funcție pătratică – sqr;
  • sine – sin;
  • cosinus – cos;
  • arctangent – ​​​​arctan;
  • logaritm natural – ln;
  • exponent – ​​exp.

Prelucrarea datelor

Pe lângă funcțiile enumerate mai sus (în cele 2 paragrafe precedente), există și altele:

  • parte întreagă a numărului – int;
  • parte fracționară a unui număr – frac;
  • obținerea părții întregi a unui număr – trunchi;
  • rotunjire la cel mai apropiat număr întreg – rotunjire;
  • conversie de tip ordinal – ord;
  • conversia codului în tip de caracter – chr;
  • determinarea valorii anterioare a unei cantități – pred;
  • determinarea valorii ulterioare a unei marimi – succ.

Operatii matematice

Funcțiile și operațiile matematice au fost acoperite la analizarea datelor întregi și reale.

Să ne concentrăm pe tipurile de constante și variabile. Ce sunt ei?

Cele simple includ subtipuri:

  • întregi – întreg;
  • logic – boolean;
  • caracter – char;
  • enumerabil;
  • interval;
  • real

Șirurile sunt scrise cu comanda șir. Referințele sunt prezentate în forma corespunzătoare.

Cele structurate se împart în:

  • matrice – matrice;
  • înregistrări – înregistrare;
  • seturi – set;
  • dosar – dosar.

Fiecare tip are propriul său set de operații.

Termeni

Dacă există comenzi și funcții alternative, atunci folosind instrucțiunile if, then, else puteți nota comenzile necesare pentru a rezolva o problemă practică.

Diagrama este prezentată în figura de mai jos.

Operații logice

Operațiunile se bazează pe adevărul unui fapt sau pe minciuna acestuia.

Există 3 tipuri de astfel de funcții:

  1. Impar - dacă numărul este impar, atunci adevărat (diversa - fals).
  2. Eoln – adevărat la sfârșitul rândului (în altă parte – fals).
  3. Eof – adevărat la sfârșitul fișierului (în altă parte – fals).

Funcții de control al programului

Ce alte proceduri există:

  • Inc – creștere în număr;
  • Clrscr – ștergerea rezultatelor anterioare ale programului;
  • Utilizează crt – lansează clscr;
  • Length – returnează lungimea șirului;
  • Val – converti un șir într-un număr;
  • Pos – găsiți prima transformare din șir;
  • Atribuire – conectarea unei variabile la un fișier;
  • Majuscule - convertirea literelor mici în majuscule.

Concluzie

Deci, pentru a deveni un programator bun, mai întâi trebuie să înveți elementele de bază. Pascal este cea mai bună alegere pentru asta.

Mediul de programare PascalABC este folosit ca învăţământul primar programare pentru şcolari în limbajul de programare Pascal. Mediul conține puternic sistem de ajutorși o carte de probleme încorporată cu sarcini verificate automat. Acest lucru vă va permite să învățați rapid cum să scrieți programe în Pascal.

Mini-versiunea gratuită a cărții de probleme conține 270 de sarcini în toate secțiunile principale. Acest lucru este suficient pentru stăpânirea independentă a nivelului inițial de programare. Puteți descărca gratuit Pascal versiunea 3.0 de aici . În prezent, această versiune nu mai este acceptată și dezvoltatorii lucrează la PascalABC.Net. Deci să începem pascal abc educaţie.

Aspectul interfeței programului PascalABC

Fereastra mediului de programare arată standard. Conține o bară de meniu (1), mai jos este o bară de instrumente cu acces rapid (2). Urmează zona de lucru a editorului de cod.


Aspect interfata programului

Etichetele sunt afișate în partea de sus deschide fișiere cu textele programului (3). Lucrul simultan cu mai multe texte simplifică foarte mult crearea de programe. Puteți copia și muta secțiuni de cod dintr-un fișier în altul (4).

În modul de execuție a programului, puteți vedea zona de intrare a datelor și de ieșire a rezultatelor (5).

Lucrul cu PascalABC

După ce ați tastat programul, trebuie să îl salvați și să setați un nume. Pentru a face acest lucru, puteți folosi comanda Fișier-Salvare ca sau butonul corespunzător din bara de instrumente.

Dați un nume diferit de cel implicit. Acest lucru vă va face mai ușor să găsiți codul de care aveți nevoie în viitor.

Lansa

Acum puteți rula programul pentru a verifica funcționarea acestuia. Porniți comanda Program -Run sau butonul triunghi verde de pe bara de instrumente. Codul este compilat înainte de rulare. Dacă există erori în cod, va apărea o linie roșie care descrie eroarea.


Erori în program

Cursorul va indica locația erorii probabile, dar aceasta nu coincide întotdeauna cu descrierea acesteia. De exemplu, în captura de ecran de mai sus, cursorul indică variabila Y, dar eroarea este conținută în linia de mai sus. Lipsește un punct și virgulă, care trebuie să fie prezent la sfârșitul fiecăruia linie de comandă. După corectarea erorii, rulați din nou programul.

Stop

Programul se oprește când se termină. Dar pot exista cazuri când programul trebuie oprit forțat. Pentru a face acest lucru, există un buton „Oprire” pe bara de instrumente sau o comandă Program - Terminare.

Setări editor de text abc pascal

În mod implicit, editorul de cod este setat la o dimensiune minimă a fontului. Dacă simțiți disconfort la tastare, atunci accesați meniu Serviciu - Setări editor. Setați dimensiunea dorită a fontului.


Configurarea editorului Pascal ABC

Lucrul cu o carte electronică de probleme

Este imposibil să înveți cum să scrii programe Pascal fără practică. Sistemul de testare automată a programului pentru Pascal vă va ajuta să stăpâniți programarea în limbajul Pascal.
Accesați meniul Instrumente - Creați șablon de program. Se va deschide următoarea fereastră (vezi mai jos)

Aici trebuie să scrieți numele grupului de activități. Ne uităm la listă și intrăm grupul dorit exact așa cum este scris în lista de ferestre. După specificarea numelui grupului de activități, promptul se va schimba.

Acum va fi indicat numărul de sarcini disponibile din acest grup sau numărul de sarcini specifice va fi listat. Adăugați un număr la numele grupului fără spațiu. Apăsați butonul . Se va deschide o filă cu sarcina selectată. Noul fișier va conține codul generat automat. Nu poate fi șters.

Acum, pentru a vedea textul sarcinii, faceți clic pe butonul de lansare a programului.

Uită-te la fereastra de mai sus. Este împărțit în trei părți. Prima parte oferă condiția sarcinii pentru care trebuie să scrieți cod. În a doua parte, numerele sunt indicate cu galben. Acestea sunt datele sursă generate de cartea cu probleme. Vor fi citite. A treia parte afișează rezultatul care va fi obținut la executarea programului. Acum închideți fereastra și adăugați codul.

Să începem execuția. Dacă nu există erori, vom primi o fereastră.

Trebuie să rulați programul de mai multe ori pentru a trece toate testele. Și numai după ce a trecut toate testele, sarcina va primi starea „Sarcina finalizată!” Acum puteți trece la următoarea sarcină.

a 2-a ed. - Sankt Petersburg: 2011. - 320Cu.

Această carte nu este un manual, ci mai degrabă un asistent în stăpânirea limbajului de programare Pascal, pe care toți școlarii sunt introduși la lecțiile de informatică. Constă în lecții dedicate programării practice și problemelor de rezolvare a problemelor. Numeroase exemple vă permit să înțelegeți mai bine cum să dezvoltați un algoritm, să vă scrieți propriul program și să formatați corect textul acestuia. Sfaturile și notele ajută cititorul să acorde atenție detaliilor importante, permițându-vă să evitați capcanele și să scrieți programe mai eficient. Cartea a fost pregătită de profesori de informatică de la școală care au o experiență vastă de mulți ani munca practica

. A doua ediție adaugă câteva capitole noi despre înregistrări, variabile dinamice, stiva, cozi și liste. Unul dintre cele mai dificile subiecte în programare este, de asemenea, acoperit - construcția algoritmilor recursivi. Format: pdf

(2011, ed. a 2-a, 320 p.) Dimensiune:

14,5 MB Urmăriți, descărcați:

docs.google.com
Conţinut
Prefață la a doua ediție 15
Introducere 16
De la editor 16
TEMA 1. Cum se scrie un program simplu în Pascal 17
Lecția 1.1. Afișăm un mesaj pe ecranul de afișare 18
Lecția 1.2. Cum se instalează acest program pe un computer 19 Etapele creației 20
program de calculator
Lecția 1.3. Formatarea textului pe ecran 28
Concluzii 34
Întrebări de test 34
TEMA 2. Cum să încorporezi date numerice în munca ta 36
Lecția 2.1. Să începem cu ceva simplu: numerele întregi 37
Tastați Integer. Operator de atribuire. Afișajul 38
Operații cu tipul Integer 40
Funcții standard de tip Integer 42
Cum sunt reprezentate variabilele de tip întreg
în memoria computerului 43
Lecția 2.2. Includem numerele reale 45 în lucrare
Descrierea tipului de date reale (reale) 45
Formate pentru înregistrarea variabilelor reale 46
Operații materiale 46
Funcții standard de tip real 47
Scrierea expresiilor matematice 48
Cum sunt reprezentate variabilele de tip real în memoria computerului 50
Lecția 2.3. Cum să combinați variabilele de tip întreg și real 51
Conversie de tip 51
Reguli de prioritate în acțiunile efectuate 52
Acțiuni asupra datelor diferite tipuri 53
Lecția 2.4. Intrarea și ieșirea datelor 56
Introducerea variabilelor de la tastatură 57
Afișaj frumos 57
Setarea valorilor variabile folosind un senzor de numere aleatorii 61
Lecția 2.5. De ce sunt necesare constante într-un program? 62
Concluzii 64
Întrebări de test 64
TEMA 3. Învățarea lucrului cu simboluri 66
Lecția 3.1. Cum înțelege un computer simbolurile 67
Tabel de coduri ASCII 67
Descrierea tipului Char și a funcțiilor standard 68
Lecția 3.2. Tipul Char este un tip ordinal! 70
Concluzii 71
Întrebări de test 72
TEMA 4. George Boole și logica sa 73
Lecția 4.1. Este nevoie de încă un tip - logic! 74
Tipul de date boolean 75
Operații relaționale 75
I/O boolean 76
Lecția 4.2. Operații logice (booleene) 76
Înmulțirea logică (conjuncție) 76
Adunare (disjuncție) logică 77
SAU exclusiv (adăugare modulo 2) 77
Negație logică (inversie) 78
Utilizarea operațiilor logice în programul 78
Prioritatea operației logice 80
Concluzii 81
Întrebări de test 81
TEMA 5. Analiza situației și succesiunea executării comenzii 82
Lecția 5.1. Verificarea condițiilor și ramificarea în algoritmul 83
Forma completă și parțială a declarației if 84
Proiectarea programelor 86
Lecția 5.2. Blocuri operator 88
Lecția 5.3. Ramificare în funcție de un număr de condiții (expunere de caz) 92
Concluzii 96
Întrebări de test 96
TEMA 6. Acțiuni repetate 98
Lecția 6.1. Declarație buclă pentru 99
Operator pentru cu creștere secvențială a contorului 100 Operator pentru cu decrementare secvențială a contorului 101
Lecția 6.2. Utilizarea buclelor cu contorul 101
Ciclu în cadrul unui ciclu 102
Urma 103
Calcularea sumei seriei 105
Concluzii 108
Întrebări de test 109
TEMA 7. Bucle cu condiția 110
Lecția 7.1. Buclă cu precondiția 111
Descrierea buclei cu precondiția 111
Calculul aproximativ al sumei unei serii infinite 112
Ridicarea unui număr la puterea întregă specificată 115
Lecția 7.2. Bucla cu postcondiție 119
Descrierea unei bucle cu postcondiție 120
Folosind buclele repeat și while 120
Relativitatea alegerii operatorilor while și repetă 123
Concluzii 129
Întrebări de test 129
TEMA 8. Arrays - tip de date structurate 131
Lecția 8.1. Stocarea datelor similare sub forma unui tabel 132
Pași de bază pentru lucrul cu matrice 133
Descrierea unui tablou în Pascal 133
Completarea unei matrice cu numere aleatoare și afișarea matricei pe ecran 134
Crearea unui tip de date personalizat 137
Găsirea elementului de matrice maximă 140
Calcularea sumei și numărului de elemente ale matricei cu proprietăți date 144
Lecția 8.2. Căutați în matricea 148
Determinarea prezenței unui element negativ într-o matrice folosind un indicator 148
Determinarea prezenței elementelor negative într-o matrice prin calcularea numărului lor 149
Găsirea numărului elementului negativ al matricei 150
Lecția 8.3. Rețele bidimensionale 154
Concluzii 156
Întrebări de test 157
TEMA 9. Algoritmi auxiliari. Proceduri și funcții. Programare structurată 1 58
Lecția 9.1. Proiectarea unui algoritm de sus în jos 159
Problemă practică folosind algoritmi auxiliari 160
Lecția 9.2. Exemplu de lucru cu funcția: Găsirea elementului maxim 167
Concluzii 168
Întrebări de test 169
TEMA 10. Cum se lucrează cu șiruri de caractere 170
Lecția 10.1. Lucrul cu șiruri de caractere: tastați String 171
Descrierea unei variabile șir 171
Operații de bază cu 172 de șiruri
Lecția 10.2. Câteva funcții și proceduri Pascal pentru lucrul cu șiruri 173
Utilizarea rutinelor șirurilor de bibliotecă 173
Concluzii 175
Întrebări de test 175
TEMA 11. Proceduri și funcții cu parametri 176
Lecția 11.1. Exemple simple folosind subrutine cu parametrii 177
Cele mai simple proceduri cu parametrii 177
Parametri formali și actuali 179
Cele mai simple funcții cu parametrii 179
Lecția 11.2. Metode de trecere a parametrilor 181
Concluzii 183
Întrebări de test 184
TEMA 12. Fișiere: salvarea rezultatelor lucrării până data viitoare 185
Lecția 12.1. Cum se lucrează cu un fișier text 186
Deschiderea unui fișier pentru citire 186
Deschiderea unui fișier pentru scriere 188
Lecția 12.2. Stocarea unei matrice bidimensionale de numere în fișier text 192
Salvarea datelor numerice într-un fișier text 192
Salvarea unei matrice de numere într-un fișier text 192
Adăugarea de informații la sfârșitul fișierului 196
Concluzii 197
Întrebări de test 197
Tema 13. Modul grafic de operare. Modulul grafic 199
Lecția 13.1. Porniți modul grafic lucrari 200
Caracteristici de lucru cu grafica 200
Comutarea la modul grafic al adaptorului video 201
Lecția 13.2. Continuăm să explorăm capacitățile modulului Graph 203
Desenarea liniilor folosind modulul Graph 203
Desenați cercuri folosind modulul Graph 205
Concluzii 206
Întrebări de test 207
Subiectul 14. Operatorii care modifică fluxul natural al programului 208
Lecția 14.1. Folosind operatorul de salt necondiționat goto 210
Lecția 14.2. Declarații care modifică fluxul unei bucle 213
declarația de pauză 213
Continuați operatorul 214
Concluzii 215
Întrebări de test 215
Subiectul 15. Gruparea datelor: înregistrări 216
Lecția 15.1. Descrierea tipului de date de înregistrare 218
Lecția 15.2. Când și cum să utilizați cu înțelepciune 220 de înregistrări
Crearea propriului tip de date - intrarea 220
Matrice de înregistrări 220
Alăturați-vă operatorului cu 221
Exemplul de selecție a structurii datelor 223
Înregistrările înregistrărilor 224
Concluzii 225
Întrebări și teme de testare 225
Subiectul 16. Variabile dinamice 226
Lecția 16.1. Alocarea memoriei 227
Lecția 16.2. Adresele 229
Lecția 16.3. Semnele 230
Indicatori către variabile individuale 230
Indicatori către blocuri variabile 232
Lecția 16.4. Alocarea memoriei dinamice 232
Nou și Eliminați 233
Alocarea dinamică a memoriei pentru matrice 235
GetMem și FreeMem 236
Accesarea elementelor unei matrice create dinamic 237
Matrice de lungime variabilă 238
Concluzii 241
Întrebări de test 242
Tema 17. Structuri dinamice de date. Stiva 244
Lecția 17.1. Să descriem tipul de date 245
Lecția 17.2. Crearea unei stive și operațiuni de bază ale stivei 247
Adăugarea unui element la stivă (Push) 248
Scoaterea unui element din stivă (Pop) 251
Verificarea stivei pentru golire (StacklsEmpty) 252
Lecția 17.3. Folosind stiva de 253
Programarea unei stive folosind o matrice 255
Concluzii 256
Întrebări și teme de testare 256
Tema 18. Structuri dinamice de date. Coada 258
Lecția 18.1. Principiul de funcționare și descrierea tipului de date 259
Lecția 18.2. Operații de bază în coadă 261
Adăugarea unui element la coadă (EnQueue) 261
Eliminarea unui element dintr-o coadă (DeQueue) 263
Verificarea cozii pentru gol (QueuelsEmpty) 264
Lecția 18.3. Folosind coada 264
Programarea unei cozi folosind o matrice 267
Concluzii 269
Întrebări de test 269
Tema 19. Structuri dinamice de date. Lista cu sens unic 270
Lecția 19.1. Descrierea tipului de date și a principiului de funcționare 271
Lecția 19.2. Operații de bază cu o listă unidirecțională 272
Vizualizarea secvenţială a tuturor elementelor listei 272
Plasarea unui element într-o listă 273
Eliminarea unui element dintr-o listă 275
Lecția 19.3. Procesarea listei 276
Fezabilitatea utilizării unei liste unidirecționale 278
Concluzii 280
Întrebări de test 280
Subiectul 20. Recursiune 281
Lecția 20.1. Descrierea principiului 282
Lecția 20.2. Turnurile din Hanoi 285
Lecția 20.3. Structura unei subrutine recurente 287
Lecția 20.4. Un exemplu de soluție recurentă a unei probleme nerecurente 288
Lecția 20.5. Un exemplu de soluție recurentă la o problemă recurentă 289
Concluzii 291
Întrebări de test 291
Anexa 1. Elementele diagramei bloc 292
Anexa 2. Probleme 295
Întreg. Descriere. Intră. Concluzie. Operațiuni 296
Real. Descriere. Intră. Concluzie. Operațiuni și funcții 296
Real. Scrierea și evaluarea expresiilor 297
Char. Descriere. Intră. Concluzie. Funcții 298
boolean. Scrierea expresiilor 298
boolean. Evaluarea expresiilor 299
Dacă. Comparații simple. Min/max/medie 300
Dacă. Ecuații și inegalități cu 300 de parametri
Pentru. Transferuri 300
Pentru. Calcule cu Loop Counter 301
Pentru. Exagerat cu comparații 302
În timp ce-Repetă. Caută 302
În timp ce-Repetă. Rândurile 303
Grafică. Drept 303
Grafică. Cercuri 304
Matrice. Umplere, retragere, sumă/cantitate 305
Matrice. Permutările 305
Matrice. Caută 306
Matrice. Cecurile 307
Matrice. Maxime 307
Subprograme fără parametri 307
Linii. Partea I 308
Linii. Partea a II-a 309
Subprograme cu parametri. Partea I 309
Subrutine cu parametri. Partea a II-a 310
Subprograme cu parametri. Partea a III-a 310
Dosarele 311
Lista unidirecțională 312
Recursiune 313

După lansarea primei ediții a cărții, colegii și studenții noștri au început să ne contacteze din ce în ce mai mult cu o solicitare de completare a primei ediții cu informații despre cele mai studiate și solicitate structuri de date. În această ediție am adăugat câteva capitole despre înregistrări, variabile dinamice, stivă, coadă și liste. De asemenea, am încercat să acoperim unul dintre cele mai dificile subiecte din programare - construcția algoritmilor recursivi.
În aplicație, am decis să renunțăm la colecția de teme cu multe opțiuni pe mai multe subiecte. În schimb, am inclus în aplicație un număr mare de sarcini tematice, organizate în blocuri de 5-8 sarcini. Sarcinile din fiecare bloc sunt aranjate de la simplu la complex. Le folosim în lecțiile noastre pentru a organiza orele practice în timp ce consolidăm materialul teoretic (o lecție - un bloc).
Autorii își exprimă cea mai profundă mulțumire unuia dintre cei mai buni studenți ai lor, profesor asociat al Departamentului de Securitate sisteme informatice SPbSUAP, Ph.D. Evgeny Mikhailovici Linsky pentru sprijin, mulți sfaturi utileși de mare ajutor în timpul lucrului la cea de-a doua ediție a cărții.