Ce tipuri de variabile sunt folosite în pascal. Tipuri de date Pascal

În orice program, trebuie să determinați tipul și tipul cantităților care vor fi utilizate pentru a rezolva problema. După tip, mărimile simple (în programare toate sunt numite date) sunt împărțite în constante și variabile.

constante– acestea sunt date ale căror valori nu se pot modifica în timpul execuției programului. Intrat într-un bloc const.

În general, descrierea unei constante simple netipizate se face astfel:

Const constant_name = expresie;

Constantele tipizate sunt descrise ca:

Constanta nume_constante: tip = expresie;

Următoarele pot fi folosite în expresii:

· numere sau un set de caractere în apostrofe;

· operatii matematice;

· operatii relationale si logice;

· functii abs(x), round(x), trunc(x);

· funcții chr(x), ord(x), pred(x), succ(x) și altele.

Format de descriere constant:

id=valoare;

1. Numerele întregi - definite de numere scrise în format zecimal sau hexazecimal, fără virgulă.

2. Real - definit de numere scrise în format de date zecimale.

3. Caracterele sunt orice simbol al computerului personal inclus în apostrofe.

4. Șir – definit printr-o succesiune de caractere arbitrare închise în apostrofe.

5. Boolean - acesta este fie fals, fie adevărat.

Tipul constantei nu este specificat, dar este determinat automat în timpul compilării: valorile expresiilor sunt imediat calculate și ulterior înlocuite doar cu numele.

Variabile- Acestea sunt date care se pot schimba în timpul execuției programului. Fiecare variabilă are propriile sale locații/locații de memorie numite. Acestea. o variabilă este un fel de container în care poți pune niște date și le poți stoca acolo. Variabilele au un nume, un tip și o valoare.

Numele variabilei trebuie să înceapă cu o literă, nu poate conține spații și poate conține doar:

· litere ale alfabetului latin;

· sublinia.

Exemple: A, A_1, AA, i, j, x, y etc. Nume incorecte: My 1, 1A. Numele variabilelor pot avea până la 126 de caractere, așa că încercați să alegeți nume de variabile semnificative. Cu toate acestea, compilatorul distinge primele 63 de caractere din nume. Dar nu face distincție între litere mici și mari, atât în ​​numele variabilelor, cât și în scrierea identificatorilor de servicii.

Tipul variabilei – trebuie definit în blocul de descriere a variabilei VAR. Valoarea unei variabile este o constantă de același tip.

Fiecare program funcționează cu date. Datele sunt, în sensul larg al cuvântului, obiecte pe care un program le prelucrează. Tipul unui dat este caracteristica acestuia. Depinde de tip:

· în ce formă vor fi stocate aceste date,

Câte celule de memorie vor fi alocate pentru stocarea acestuia,

Care este valoarea minimă și maximă pe care o poate lua,

· ce operatii pot fi efectuate cu acesta.

Câteva tipuri simple de date Pascal:

1. Tipuri întregi (ShortInt, Integer, LongInt, Byte, Word).

2. Tipuri reale (Real, Single, Double, Extended, Comp).

3. logic (boolean).

4. Personaj (Char).

5. Tipuri de șiruri (String, String [n]).

9. Operatori necondiționați în Pascal. Descriere și utilizare.

Tip de operator

mergi la<метка>;

Scop – transferul controlului în program către operatorul marcat cu etichetă<метка>. O etichetă poate fi un nume (scris conform regulilor pentru numele de limbă) sau un întreg fără semn descris în instrucțiunea Label label și plasat înaintea instrucțiunii etichetate, dar numai într-un singur loc în program. O etichetă este separată de operator prin simbolul „:” O tranziție la o etichetă poate avea loc de mai multe ori într-un bloc, dar eticheta în sine poate apărea o singură dată. Dacă nu există un transfer de control către o anumită etichetă, nu va exista nicio eroare.

Operatorul de salt necondiționat nu este în general permis în programarea structurată. Deși vă permite să scurtați textul programului, utilizarea lui în Pascal este limitată de o serie de reguli și recomandări. Este interzis să săriți într-o instrucțiune compusă, în interiorul sau la începutul unei subrutine și să ieșiți dintr-o subrutină la programul care a numit-o. Nu este recomandat să treceți dincolo de pagina (ecranul) textului programului, cu excepția trecerii la declarațiile finale ale programului. Toate acestea se datorează posibilității de a sări peste declarații importante pentru funcționarea corectă a programului. De obicei, operatorul de salt necondiționat este folosit doar pentru a reveni la începutul corpului buclei dacă bucla este construită folosind operatori condiționali și necondiționați.

Rețineți că instrucțiunea care urmează goto trebuie, de asemenea, marcată cu o etichetă diferită (dacă goto nu este ultima din grupul de instrucțiuni). În caz contrar, nu există nicio modalitate de a ajunge la următoarea declarație goto.

10. Operatori de sucursale în Pascal. Descriere și utilizare.

Operatorii care vă permit să selectați doar una dintre mai multe opțiuni posibile pentru executarea unui program (ramuri) includ

Acestea. Aceste instrucțiuni vă permit să schimbați ordinea naturală de execuție a instrucțiunilor programului.

dacă<условие>apoi< оператор 1 >

altfel<оператор 2> ;

dacă a>=b atunci Max:=a altfel Max:=b;

Într-o instrucțiune if, o singură instrucțiune poate fi executată pe ambele ramuri (atunci și else)!

Un exemplu de problemă la operatorii de sucursale în Pascal. Introduceți două numere întregi și afișați cel mai mare dintre ele.

Idee de soluție: trebuie să afișați primul număr dacă este mai mare decât al doilea, sau al doilea dacă este mai mare decât primul.

Caracteristică: acțiunile interpretului depind de anumite condiții (dacă... altfel...).

var a, b, max: întreg;

writeln("Introduceți două numere întregi");

dacă a > b atunci max:=a altfel max:=b;

writeln("Număr maxim", max);

Condiții dificile

O condiție complexă este o condiție constând din mai multe condiții (relații) simple conectate folosind logica

operatii:

Nu – NU (negație, inversare)

Și – Și (înmulțire logică, conjuncție,

îndeplinirea simultană a condițiilor)

Sau – SAU (adunare logică, disjuncție,

îndeplinirea a cel puțin una dintre condiții)

Xor – SAU exclusiv (numai executați

una dintre cele două condiții, dar nu ambele)

Condiții simple (relații)

< <= > >= = <>

Ordin de executare (prioritate = vechime)

Expresii în paranteze

<, <=, >, >=, =, <>

Caracteristică - fiecare dintre condițiile simple trebuie să fie cuprinsă între paranteze.

operator de selecție a cazului

Declarația de caz vă permite să alegeți între mai multe opțiuni.

Operatorul variant constă

Dintr-o expresie numită selector,

O listă de operatori, fiecare marcat cu o constantă de același tip ca și selectorul.

Selectorul trebuie să fie doar un tip de date ordinal, nu un tip de date longint.

Selectorul poate fi o variabilă sau o expresie.

Lista de constante poate fi specificată fie printr-o enumerare explicită, fie printr-un interval, fie prin combinarea lor. Repetarea constantelor nu este

permis.

Tipul comutatorului și tipurile tuturor constantelor trebuie să fie compatibile.

Caz< выражение {селектор}>de

<список констант 1> : < оператор 1>;

< список констант K> : < оператор K>;

Declarația case se execută după cum urmează:

1) se calculează valoarea selectorului;

2) rezultatul obținut este verificat pentru a vedea dacă aparține unei anumite liste de constante;

3) dacă se găsește o astfel de listă, atunci nu se efectuează alte verificări, ci operatorul corespunzător

ramura selectată, după care controlul este transferat instrucțiunii care urmează cuvântului cheie final, care închide întregul

construct de caz;

4) dacă nu există o listă adecvată de constante, atunci se execută operatorul care urmează cuvântul cheie else; dacă nu există altă ramură,

atunci nu se face nimic.

Într-o instrucțiune case branch, o singură instrucțiune poate fi executată în toate ramurile!

Dacă trebuie să executați mai mult de unul, trebuie să utilizați parantezele operatorului început-sfârșit.

caz Index mod 4 din

1: x:= y*y – 2*y;

11.Opțiune (selecție) operator în Pascal. Descriere și utilizare.

Operatorul de selecție (opțiune, comutator) implementează alegerea uneia dintre alternativele posibile, adică. opțiuni pentru continuarea programului.

Format de înregistrare:

Caz – alegere, opțiune;

S – selector, expresie de tip ordinal;

Ki – constante de selecție, o constantă al cărei tip se potrivește cu tipul selectorului;

OPi – orice operator, inclusiv gol;

Operatorul de selecție implementează următorul construct:

Funcționarea operatorului de selecție în Pascal: Se evaluează expresia selectorului. Valoarea calculată este comparată secvenţial cu constantele alternative, iar controlul este transferat operatorului constantă de selecţie, care coincide cu valoarea selectorului calculată. Instrucțiunea este executată și controlul este transferat dincolo de instrucțiunea select. Dacă valoarea calculată a selectorului nu se potrivește cu niciuna dintre constante, atunci controlul este transferat în ramura Else, a cărei prezență nu este necesară; în acest caz, controlul este transferat în afara operatorului de selecție.

Schema bloc a operatorului de selecție.

Structura instrucțiunii de selecție poate fi implementată folosind instrucțiuni condiționale imbricate, dar acest lucru reduce vizibilitatea programului. Nu se recomandă mai mult de 2-3 niveluri de investiție.

12. Tipuri de operatori de buclă în Pascal, scopul lor.

5. Construcții algoritmice de cicluri. Tipuri de cicluri.

Există trei tipuri de algoritmi de buclă: buclă cu un parametru (numită buclă aritmetică), buclă cu o precondiție și buclă cu o postcondiție (numită iterativă).

12.13 Bucla aritmetică.Într-un ciclu aritmetic, numărul de pași (repetări) este determinat în mod unic de regula de modificare a parametrului, care este specificată folosind valorile inițiale (N) și finale (K) ale parametrului și pasul (h) de schimbarea ei. Adică, la prima etapă a ciclului valoarea parametrului este N, la a doua - N + h, la a treia - N + 2h etc. La ultima etapă a ciclului, valoarea parametrului nu este mai mare decât K, dar astfel încât modificarea sa ulterioară va duce la o valoare mai mare decât K.

Buclele de contor sunt folosite atunci când o porțiune ciclică a unui program trebuie repetată de un număr fix de ori. Astfel de bucle au o variabilă întreagă numită contor de bucle.

Dacă este necesar ca un fragment de program să fie repetat de un anumit număr de ori, atunci se utilizează următoarea construcție:

PENTRU<имя счетчика цикла> = <начальное значение>ACEA<конечное значение>DO<оператор>;

FOR, TO, DO - cuvinte rezervate (engleză: for, to, perform);

<счетчик (параметр) цикла>- o variabilă de tip INTEGER, care se modifică pe intervalul de la<начального значения>, crescând cu unu la sfârșitul fiecărei etape a ciclului;

<оператор>- orice operator (de obicei compus).

Există o altă formă a acestui operator:

PENTRU<имя счетчика цикла>:= <начальное значение>JOS<конечное значение>DO<оператор> :

Înlocuirea TO cu DOWNTO (în engleză: down to) înseamnă că pasul de modificare a parametrului ciclului este egal cu - 1, adică contorul scade pas cu pas.

12.14 Buclă cu precondiție. Numărul de pași din ciclu nu este predeterminat și depinde de datele de intrare ale sarcinii. În această structură ciclică, valoarea unei expresii condiționale (condiție) este mai întâi verificată înainte de a executa următorul pas al buclei. Dacă expresia condiționată este adevărată, corpul buclei este executat. După care controlul este din nou transferat la verificarea stării etc. Aceste acțiuni sunt repetate până când expresia condiționată se evaluează la FALS. Prima dată când condiția nu este îndeplinită, ciclul se încheie.

Acest operator de repetiție cel mai frecvent utilizat este:

IN TIMP CE<условие>DO<оператор>;

WHILE, DO - cuvinte rezervate (în engleză: bye, do);

<условие>- expresie de tip logic;

<оператор>- un operator arbitrar (posibil compus).

O caracteristică specială a unei bucle cu o precondiție este că, dacă expresia condiționată este inițial falsă, atunci corpul buclei nu va fi niciodată executat.

Buclele cu precondiții sunt utilizate atunci când execuția buclei este asociată cu o anumită condiție logică. O instrucțiune de buclă cu o precondiție are două părți: condiția de execuție a buclei și corpul buclei.

12.15 Buclă cu postcondiție (buclă iterativă). Ca și într-o buclă cu o precondiție, într-un proiect ciclic cu o postcondiție, numărul de repetări ale corpului buclei nu este predeterminat; depinde de datele de intrare ale sarcinii. Spre deosebire de o buclă cu o precondiție, corpul unei bucle cu o postcondiție va fi întotdeauna executat cel puțin o dată, după care condiția este verificată. În acest design, corpul buclei va fi executat atâta timp cât valoarea expresiei condiționale este falsă. Odată ce devine adevărată, executarea comenzii se oprește.

Acest operator arată astfel:

REPETA<тело цикла>PANA CAND<условие>:

REPEAT, UNTIL - cuvinte rezervate (engleză: repeat until not);

<условие>- o expresie de tip logic, dacă valoarea ei este adevărată, atunci bucla iese.

Trebuie remarcat faptul că în această construcție, succesiunea de instrucțiuni care definește corpul buclei nu este cuprinsă între paranteze operator BEGIN ... END, deoarece sunt perechea REPEAT ... UNTIL.

Buclele de postcondiție sunt similare buclelor de precondiție, dar plasează condiția după corpul buclei.

Spre deosebire de o buclă cu o precondiție, care se poate termina fără a executa niciodată corpul buclei (dacă condiția de execuție este falsă la prima trecere a buclei), corpul unei bucle cu o postcondiție trebuie executat cel puțin o dată, după în care se verifică starea.

Unul dintre operatorii de corp de buclă trebuie să afecteze valoarea condiției de execuție a buclei, altfel bucla se va repeta de un număr infinit de ori.

Dacă condiția este adevărată, atunci bucla este ieșită, în caz contrar instrucțiunile buclei sunt repetate.

16. Matrice- acesta este un set de elemente de același tip, unite printr-un nume comun și ocupând o anumită zonă de memorie în computer. Numărul de elemente dintr-o matrice este întotdeauna finit. În general, o matrice este un tip de date structurat format dintr-un număr fix de elemente de același tip. Array-urile au primit denumirea de tip obișnuit (sau rânduri) deoarece combină elemente de același tip (omogene logic), ordonate (reglementate) prin indici care determină poziția fiecărui element în matrice. Orice tip de date poate fi folosit ca elemente ale unui tablou, deci este destul de legitim să aveți matrice de înregistrări, matrice de pointeri, matrice de șiruri de caractere, matrice etc. Elementele unei matrice pot fi date de orice tip, inclusiv cele structurate Tipul de elemente ale matricei se numește bază. O caracteristică a limbajului Pascal este că numărul de elemente ale matricei este fix în timpul descrierii și nu se modifică în timpul execuției programului. Elementele care alcătuiesc tabloul sunt ordonate în așa fel încât fiecare element să aibă un set corespunzător de numere (indici) care îi determină locația în succesiunea generală. Fiecare element individual este accesat prin indexarea elementelor matricei. Indicii sunt expresii de orice tip scalar (de obicei întreg), cu excepția realului. Tipul de index determină limitele pentru modificarea valorilor indexului. Expresia matrice de este folosită pentru a descrie o matrice.

O matrice este o colecție de date care îndeplinește funcții similare și este desemnată printr-un singur nume. Dacă fiecare element al unei matrice are alocat un singur număr de serie, atunci o astfel de matrice se numește liniară sau unidimensională.

17. Matrice unidimensională– acesta este un număr fix de elemente de același tip, unite printr-un singur nume, iar fiecare element are propriul său număr unic, iar numerele elementelor sunt consecutive.

Pentru a descrie astfel de obiecte în programare, trebuie mai întâi să introduceți tipul corespunzător în secțiunea descriere tip.

Tipul de matrice este descris după cum urmează:

Nume tip = Array [tip(uri) de index] Tip de elemente;

Nume variabilă: nume tip;

O variabilă matrice poate fi descrisă imediat în secțiunea de descriere a variabilei Var:

Var Nume variabilă: matrice [tip de index(e)] De tip element;

Array este un cuvânt de serviciu (tradus din engleză ca „array”);

Of este un cuvânt de serviciu (tradus din engleză ca „de la”).

Tip index – orice tip ordinal, cu excepția tipurilor întreg și lung.

Tipul elementelor în sine poate fi orice, cu excepția tipului de fișier.

Numărul de elemente dintr-o matrice se numește dimensiunea acestuia. Este ușor de calculat că, cu ultima metodă de descriere a unui set de indici, dimensiunea matricei este egală cu: valoarea maximă a indicelui – valoarea minimă a indicelui + 1.

De exemplu:

mas = matrice de real;

Matricea X este unidimensională, constând din douăzeci de elemente de tip real. Elementele matricei sunt stocate în memoria computerului secvenţial unul după altul.

Atunci când se utilizează variabile pentru a desemna un index, valorile acestora trebuie determinate în momentul utilizării, iar în cazul expresiilor aritmetice, rezultatul lor nu trebuie să depășească limitele valorilor minime și maxime ale indicilor matricei.

Indicii elementelor de matrice pot începe cu orice număr întreg, inclusiv cu cei negativi, de exemplu:

Tip bb = Array [-5..3] Of Boolean;

Matricele de acest tip vor conține 9 variabile logice, numerotate de la -5 la 3.

18. Matrice bidimensională în Pascal este tratată ca o matrice unidimensională al cărei tip de element este și o matrice (matrice de matrice). Poziția elementelor în matrice Pascal bidimensionale este descrisă de doi indici. Ele pot fi prezentate sub forma unui tabel dreptunghiular sau a unei matrice.

Luați în considerare o matrice Pascal bidimensională cu o dimensiune de 3*3, adică va avea trei linii și fiecare linie va avea trei elemente:

Fiecare element are propriul său număr, ca și tablourile unidimensionale, dar acum numărul constă deja din două numere - numărul rândului în care se află elementul și numărul coloanei. Astfel, numărul elementului este determinat de intersecția unui rând și a unei coloane. De exemplu, un 21 este elementul care apare în al doilea rând și prima coloană.

Descrierea unui tablou Pascal bidimensional.

Există mai multe moduri de a declara o matrice Pascal bidimensională.

Știm deja cum să descriem tablouri unidimensionale, ale căror elemente pot fi de orice tip și, prin urmare, elementele în sine pot fi matrice. Luați în considerare următoarea descriere a tipurilor și variabilelor:

Operații de bază cu tablouri Pascal bidimensionale

Tot ceea ce s-a spus despre operațiile de bază cu tablouri unidimensionale este valabil și pentru matrice. Singura acțiune care poate fi efectuată pe matrice întregi de același tip este atribuirea. Adică, dacă programul nostru descrie două matrice de același tip, de exemplu,

matrice= matrice de întreg;

apoi în timpul execuției programului puteți atribui matricei a valoarea matricei b (a:= b). Toate celelalte acțiuni sunt efectuate element cu element și toate operațiile valide care sunt definite pentru tipul de date ale elementelor matricei pot fi efectuate asupra elementelor. Aceasta înseamnă că dacă o matrice este formată din numere întregi, atunci operațiunile definite pentru numerele întregi pot fi efectuate asupra elementelor sale, dar dacă matricea este formată din caractere, atunci li se pot aplica operațiunile definite pentru lucrul cu caractere.

21. Tehnologii de lucru cu documente text. Editori și procesoare de text: scop și capabilități.

Editoarele de text mai avansate (de exemplu, Microsoft Word și OpenOffice.org Writer), care sunt uneori numite procesoare de text, au o gamă largă de capabilități pentru crearea de documente (inserarea de liste și tabele, instrumente de verificare ortografică, salvarea corecțiilor etc.).

Pentru a se pregăti pentru publicarea de cărți, reviste și ziare în procesul de aspect al publicării, sunt utilizate programe puternice de procesare a textului - sisteme de publicare desktop (de exemplu, Adobe PageMaker, Microsoft Office Publisher).

Pentru a pregăti pagini Web și site-uri Web pentru publicare pe Internet, sunt utilizate aplicații specializate (de exemplu, Microsoft FrontPage).

Editorii de text sunt programe pentru crearea, editarea, formatarea, salvarea și imprimarea documentelor. Un document modern poate conține, pe lângă text, și alte obiecte (tabele, diagrame, imagini etc.).

Editarea este o transformare care adaugă, șterge, mută sau corectează conținutul unui document. Editarea unui document se face de obicei prin adăugarea, ștergerea sau mutarea caracterelor sau a fragmentelor de text.

Formatarea este proiectarea textului. Pe lângă caracterele text, textul formatat conține coduri speciale invizibile care spun programului cum ar trebui să fie afișat pe ecran și tipărit pe o imprimantă: ce font să folosești, care ar trebui să fie stilul și dimensiunea caracterelor, cum ar trebui să fie paragrafele și titlurile ar trebui formatat.

Textele formatate și neformatate sunt oarecum diferite în natură. Această diferență trebuie înțeleasă. În textul formatat, totul este important: dimensiunea literelor, imaginea lor și unde se termină o linie și începe alta. Adică, textul formatat este indisolubil legat de parametrii foii de hârtie pe care este tipărit.

Când proiectați documente text, adesea trebuie să adăugați elemente sau obiecte non-text în document. Editorii de text avansati vă permit să faceți acest lucru - au oportunități ample de a insera imagini, diagrame, formule și așa mai departe în text.

Documente pe hârtie și electronice. Documentele pot fi hârtie sau electronice. Documentele pe hârtie sunt create și formatate pentru a oferi cea mai bună prezentare posibilă atunci când sunt imprimate pe o imprimantă. Documentele electronice sunt create și formatate pentru cea mai bună prezentare pe ecranul computerului. Înlocuirea treptată a fluxului de documente pe hârtie cu unul electronic este una dintre tendințele în dezvoltarea tehnologiei informației. Reducerea consumului de hârtie are un efect benefic asupra conservării resurselor naturale și reducerea poluării mediului.

Formatarea documentelor pe hârtie și electronice poate diferi semnificativ. Pentru documentele pe hârtie se acceptă așa-numita formatare absolută. Un document tipărit este întotdeauna formatat pentru a se potrivi cu o coală tipărită de dimensiune (format) cunoscută. De exemplu, lățimea unei linii de document depinde de lățimea foii de hârtie. Dacă un document a fost proiectat pentru tipărirea pe coli de format mare, atunci nu poate fi tipărit pe coli mici de hârtie - o parte a documentului nu se va potrivi pe acestea. Într-un cuvânt, formatarea unui document tipărit necesită întotdeauna să selectați mai întâi o coală de hârtie și apoi să o legați la această coală. Pentru un document tipărit, puteți indica întotdeauna cu precizie (în orice unități de măsură) dimensiunile fonturilor, marginile, distanța dintre linii sau paragrafe etc.

Pentru documentele electronice, așa-numita formatare relativă este comună. Autorul documentului nu poate prezice în avans pe ce computer sau dimensiunea ecranului va fi vizualizat documentul. Mai mult, chiar dacă dimensiunile ecranului ar fi cunoscute dinainte, ar fi tot imposibil de prezis care va fi dimensiunea ferestrei în care cititorul va vedea documentul. Prin urmare, documentele electronice sunt realizate pentru a se adapta la dimensiunea și formatul actual al ferestrei din mers.

De asemenea, autorul unui document electronic nu știe ce fonturi sunt disponibile pe computerul viitorului cititor și, prin urmare, nu poate indica cu strictețe în ce font ar trebui afișate textul și titlurile. Dar poate seta formatarea care va face ca titlurile să pară mai mari decât textul pe orice computer.

Formatarea relativă este folosită pentru a crea documente electronice de Internet (așa-numitele pagini Web), iar formatarea absolută este folosită pentru a crea documente tipărite în procesoare de text.

22.Elementele structurale principale ale unui document text. Fonturi, stiluri, formate.

Formatarea fontului (caracterelor).

Simbolurile sunt litere, cifre, spații, semne de punctuație și caractere speciale. Simbolurile pot fi formatate (schimbați-le aspectul). Printre principalele proprietăți ale simbolurilor se numără următoarele: font, dimensiune, stil și culoare.

Un font este un set complet de caractere dintr-un anumit stil. Fiecare font are propriul nume, de exemplu Times New Roman, Arial, Comic Sans MS. Unitatea de font este punctul (1 pt = 0,367 mm). Dimensiunile fonturilor pot fi modificate în limite largi. Pe lângă stilul normal (obișnuit) al caracterelor, se folosesc de obicei bold, italic și bold italic.

În funcție de modul în care sunt prezentate pe computer, există diferențe între fonturile raster și vectoriale. Metodele grafice raster sunt utilizate pentru a reprezenta fonturile raster; caracterele fonturilor sunt grupuri de pixeli. Fonturile bitmap pot fi scalate numai de anumiți factori.

În fonturile vectoriale, caracterele sunt descrise prin formule matematice și pot fi scalate în mod arbitrar. Dintre fonturile vectoriale, fonturile TrueType sunt cele mai utilizate.

De asemenea, puteți seta opțiuni suplimentare de formatare a caracterelor: sublinierea caracterelor cu diferite tipuri de linii, modificarea aspectului caracterelor (superscript, indice, barat), modificarea spațierii dintre caractere.

Dacă intenționați să imprimați un document color, puteți specifica culori diferite pentru diferite grupuri de caractere.

Pentru a verifica ortografia și sintaxa, se folosesc module software speciale, care sunt de obicei incluse în procesoarele de text și sistemele de publicare. Astfel de sisteme conțin dicționare și reguli gramaticale pentru mai multe limbi, ceea ce face posibilă corectarea erorilor în documentele multilingve.

24. Bază de date este un model de informații care vă permite să stocați ordonat date despre un grup de obiecte care au același set de proprietăți.

Există mai multe tipuri diferite de baze de date: tabulare (relaționale), ierarhice și de rețea.

Baze de date tabelare.

O bază de date tabelară conține o listă de obiecte de același tip, adică obiecte cu același set de proprietăți. Este convenabil să reprezentați o astfel de bază de date sub forma unui tabel bidimensional.

În bazele de date relaționale, toate datele sunt prezentate sub formă de tabele simple, împărțite în rânduri și coloane, la intersecția cărora se află datele. Interogările pe astfel de tabele returnează tabele care pot face ele însele subiectul unor interogări ulterioare. Fiecare bază de date poate conține mai multe tabele.

Principalul avantaj al tabelelor este claritatea lor. Ne ocupăm de informații tabelare aproape în fiecare zi. Uitați-vă, de exemplu, la jurnalul dvs.: orarul de clasă este prezentat acolo sub forma unui tabel. Când ajungem în gară, ne uităm la orarul trenurilor. Ce fel arată? Aceasta este o masă! Există și o masă de campionat de fotbal. Și jurnalul profesorului, unde îți dă note, este și o masă.

Pe scurt, caracteristicile unei baze de date relaționale pot fi formulate după cum urmează:

1.Datele sunt stocate în tabele formate din coloane („atribute”, „câmpuri”) și rânduri („înregistrări”);

2.La intersecția fiecărei coloane și rânduri există exact o valoare;

3.Fiecare coloană are propriul nume, care îi servește drept nume, iar toate valorile dintr-o coloană sunt de același tip.

4.Interogările către baza de date returnează rezultate sub formă de tabele, care pot acționa și ca obiecte de interogare.

5.Rândurile dintr-o bază de date relațională sunt neordonate - ordonarea se face în momentul în care este generat răspunsul la interogare.

6.De obicei, informațiile din bazele de date sunt stocate nu într-un singur tabel, ci în mai multe interdependente.

În bazele de date relaționale, este apelat un rând de tabel înregistrare, iar coloana este camp. Fiecare câmp de tabel are un nume.

Câmpuri- acestea sunt diverse caracteristici (numite uneori atribute) ale unui obiect. Valorile câmpurilor dintr-o linie se referă la un singur obiect.

Cheia principalaîntr-o bază de date se numește un câmp (sau un set de câmpuri) a cărui valoare nu se repetă în diferite înregistrări.

Fiecare câmp are asociată încă o proprietate foarte importantă: tip de câmp. Un tip de câmp definește setul de valori pe care un anumit câmp le poate prelua în diferite înregistrări.

Există patru tipuri principale de câmp utilizate în bazele de date relaționale:

Numeric;

Simbolic;

Logic.

25. Sisteme de management al bazelor de date și principii de lucru cu acestea. Căutați, ștergeți și sortați datele în baza de date. Condiții de căutare (expresii logice); comanda și sortarea cheilor.

Sisteme de management al bazelor de date (DBMS).

Pentru a crea baze de date, precum și pentru a efectua operațiuni de căutare și sortare, se folosesc programe speciale - sisteme de gestionare a bazelor de date (DBMS).

Astfel, este necesar să se facă distincția între bazele de date (DB-uri) în sine - seturi ordonate de date, și sistemele de gestionare a bazelor de date (DBMS) - programe care gestionează stocarea și procesarea datelor. De exemplu, aplicația Access, inclusă în suita de birou Microsoft Office, este un SGBD care permite utilizatorului să creeze și să proceseze baze de date tabelare.

O bază de date relațională este în esență un tabel bidimensional. O înregistrare aici este înțeleasă ca un rând al unui tabel bidimensional, ale cărui elemente formează coloanele tabelului. În funcție de tipul de date, coloanele pot fi numerice, text sau dată. Rândurile tabelului sunt numerotate.

Lucrul cu un SGBD începe cu crearea unei structuri de bază de date, adică cu definirea:

numar de coloane;

nume de coloane;

tipuri de coloane (text/număr/data);

lățimi de coloane.

Principalele funcții ale SGBD:

Gestionarea datelor din memoria externă (pe discuri);

Gestionarea datelor din RAM;

Înregistrarea modificărilor și restaurarea bazei de date după eșecuri;

Suport pentru limbaje de baze de date (limbaj de definire a datelor, limbaj de manipulare a datelor).

În comenzile DBMS, condiția de selecție este scrisă sub forma unei expresii logice.

O expresie logică, ca o expresie matematică, este executată (evaluată), dar rezultatul nu este un număr, ci o valoare logică: adevărat sau fals.

O expresie constând dintr-o valoare logică sau o relație va fi numită expresie logică simplă.

Adesea apar probleme în care nu sunt folosite condiții individuale, ci un set de condiții (relații) interconectate. De exemplu, trebuie să selectați studenți a căror greutate este mai mare de 60 și a căror înălțime este mai mică de 168.

O expresie care conține operații logice va fi numită expresie logică complexă.

Combinarea a două (sau mai multe) afirmații într-una singură folosind conjuncția „și” se numește operația de înmulțire sau conjuncție logică.

Ca rezultat al înmulțirii logice (conjuncție), adevărul se obține dacă toate expresiile logice sunt adevărate.

Combinarea a două (sau mai multe) enunțuri folosind conjuncția „sau” se numește operația de adunare sau disjuncție logică.

Ca rezultat al adunării logice (disjuncției), adevărul se obține dacă cel puțin o expresie logică este adevărată.

Atașarea particulei „nu” la o declarație se numește operația de negație sau inversare logică.

27. Foi de calcul, scop și funcții de bază.

Foaie de calcul este un program de prelucrare a datelor numerice care stochează și prelucrează date în tabele dreptunghiulare.

O foaie de calcul este formată din coloane și rânduri. Titlurile coloanelor sunt desemnate prin litere sau combinații de litere (A, G, AB etc.), titlurile rândurilor sunt desemnate prin numere (1, 16, 278 etc.). O celulă este intersecția unei coloane și a unui rând.

Fiecare celulă de tabel are propria sa adresă. Adresa celulei unei foi de calcul este formată dintr-un antet de coloană și un antet de rând, de exemplu: A1, F123, R1. Celula cu care sunt efectuate unele acțiuni este evidențiată cu un cadru și se numește activă.

Tipuri de date. Foile de calcul vă permit să lucrați cu trei tipuri principale de date: număr, text și formulă.

Numerele din foile de calcul Excel pot fi scrise în format obișnuit numeric sau exponențial, de exemplu: 195,2 sau 1,952E + 02. În mod implicit, numerele sunt aliniate la dreapta într-o celulă. Acest lucru se explică prin faptul că, atunci când plasați numere unul sub celălalt (într-o coloană de tabel), este convenabil să aveți alinierea după cifre (unități sub unități, zeci sub zeci etc.).

Formula trebuie să înceapă cu un semn egal și poate include numere, nume de celule, funcții (matematice, statistice, financiare, dată și oră etc.) și simboluri matematice. De exemplu, formula „=A1+B2” oferă adăugarea numerelor stocate în celulele A1 și B2, iar formula „=A1*B” înmulțește numărul stocat în celula A1 cu 5. Când introduceți o formulă într-o celulă , nu formula în sine este afișată și rezultatul calculelor care utilizează această formulă. Dacă valorile inițiale incluse în formulă se modifică, rezultatul este recalculat imediat.

Legături absolute și relative. Formulele folosesc referințe la adresele celulelor. Există două tipuri principale de legături: relative și absolute. Diferențele dintre ele apar atunci când copiați o formulă din celula activă în altă celulă.

O referință relativă într-o formulă este utilizată pentru a specifica o adresă de celulă care este calculată în raport cu celula în care se află formula. Când mutați sau copiați o formulă din celula activă, referințele relative sunt actualizate automat în funcție de noua poziție a formulei. Legăturile relative au următoarea formă: A1, BZ.

Dacă semnul dolar precede o literă (de exemplu: $A1), atunci coordonatele coloanei sunt absolute, iar coordonatele rândului este relativă. Dacă simbolul dolarului este în fața unui număr (de exemplu, A$1), atunci, dimpotrivă, coordonatele coloanei sunt relativ, iar coordonatele rândului este absolută. Astfel de legături se numesc mixte.

De exemplu, să fie scrisă formula =A$1+$J31 în celula C1, care atunci când este copiată în celula D2 ia forma =B$1+$B2. Legăturile relative s-au schimbat când au fost copiate, dar linkurile absolute nu.

Sortarea și căutarea datelor. Foile de calcul vă permit să sortați datele. Datele din foile de calcul sunt sortate în ordine crescătoare sau descrescătoare. La sortare, datele sunt aranjate într-o anumită ordine. Puteți efectua sortări imbricate, adică sortați datele după mai multe coloane și alocați o secvență de sortare pentru coloane.

În foile de calcul, puteți căuta date în conformitate cu condițiile specificate - filtre. Filtrele sunt definite folosind termeni de căutare (mai mare decât, mai mic decât, egal cu etc.) și valori (100, 10 etc.). De exemplu, mai mult de 100. Ca rezultat al căutării, se vor găsi acele celule care conțin date care se potrivesc cu filtrul specificat.

Construirea de diagrame și grafice. Foile de calcul vă permit să prezentați date numerice sub formă de diagrame sau grafice. Diagramele vin în diferite tipuri (bar, plăcintă etc.); Alegerea tipului de diagramă depinde de natura datelor.

28. Tehnologia procesării informațiilor în foi de calcul (ET). Structura foii de calcul.

O foaie de calcul este un program de procesare a datelor numerice care stochează și procesează date în tabele dreptunghiulare. O foaie de calcul este formată din coloane și rânduri. Titlurile coloanelor sunt desemnate prin litere sau combinații de litere (A, G, AB etc.), titlurile rândurilor sunt desemnate prin numere (1, 16, 278 etc.). O celulă este intersecția unei coloane și a unui rând. Fiecare celulă din tabel are propria sa adresă. Adresa celulei unei foi de calcul este formată dintr-un antet de coloană și un antet de rând, de exemplu: Al, B5, E7. Celula cu care sunt efectuate unele acțiuni este evidențiată cu un cadru și se numește activă. Foile de calcul cu care lucrează utilizatorul în aplicație se numesc foi de lucru. Puteți introduce și modifica datele de pe mai multe foi simultan și puteți efectua calcule pe baza datelor din mai multe foi. Documentele cu foi de calcul pot include mai multe foi de lucru și sunt numite registre de lucru.

29. Tipuri de date în foi de calcul (ET): numere, formule, text. Reguli de scriere a formulelor.

Tipuri de date.

Foile de calcul vă permit să lucrați cu trei tipuri principale de date: număr, text și formulă.

Numerele din foile de calcul Excel pot fi scrise în format obișnuit numeric sau exponențial, de exemplu: 195,2 sau 1,952Ё + 02. În mod implicit, numerele sunt aliniate la dreapta într-o celulă. Acest lucru se explică prin faptul că, atunci când plasați numere unul sub celălalt (într-o coloană de tabel), este convenabil să aveți alinierea după cifre (unități sub unități, zeci sub zeci etc.).

Textul din foile de calcul Excel este o secvență de caractere formată din litere, cifre și spații, de exemplu, intrarea „32 MB” este text. În mod implicit, textul este aliniat la stânga într-o celulă. Acest lucru se datorează modului tradițional de a scrie (de la stânga la dreapta).

Formula trebuie să înceapă cu un semn egal și poate include numere, nume de celule, funcții (Matematică, Statistică, Financiară, Data și Ora etc.) și simboluri ale operațiilor matematice. De exemplu, formula „=A1+B2” oferă adăugarea numerelor stocate în celulele A1 și B2, iar formula „=A1*5” înmulțește numărul stocat în celula A1 cu 5. Când introduceți o formulă într-o celulă , nu formula în sine este afișată și rezultatul calculelor care utilizează această formulă. Dacă valorile inițiale incluse în formulă se modifică, rezultatul este recalculat imediat.

Reguli pentru scrierea formulelor în foi de calcul

1. Formulele conțin numere, nume de celule, semne de operație, paranteze, nume de funcții

2. Operații aritmetice și semnele lor:

Numele operațiunii Simbol Combinație de taste

adăugare + (Shift + +=)sau (+) pe tastatura suplimentară

scădere – (-)

înmulțire * (Shift + 8) sau (*) pe o tastatură suplimentară

diviziune / (Shift + | \) sau (/) pe o tastatură suplimentară

exponentiation ^ (Shift + 6) în engleză

3. Formula este scrisă într-o linie, simbolurile sunt aliniate succesiv unul după altul, se introduc toate semnele operației; se folosesc paranteze.

4. Operațiile dintre paranteze se execută mai întâi, dacă nu există paranteze, atunci ordinea de execuție este determinată de precedența operațiilor. În ordinea descrescătoare a priorității, operațiunile sunt aranjate în următoarea ordine:

1. exponentiare

2. înmulțire, împărțire

3. adunare, scădere

Operațiile cu aceeași prioritate sunt efectuate în ordinea în care sunt scrise de la stânga la dreapta.

5. Formulele pot fi introduse în modul de afișare a calculelor, adică. Utilizatorul începe să scrie o formulă în celula curentă cu semnul =, iar după apăsarea tastei Enter, rezultatul calculului folosind formula este afișat în celulă.

6. Formulele pot fi introduse în modul de afișare a formulei, adică. utilizatorul scrie o formulă în celula curentă fără semnul = și formula este afișată în celulă după apăsarea tastei Enter.

30. Funcții de bază încorporate. Legături absolute și relative în foi de calcul (ET).

O referință relativă într-o formulă este utilizată pentru a specifica o adresă de celulă care este calculată în raport cu celula în care se află formula. Când mutați sau copiați o formulă din celula activă, referințele relative sunt actualizate automat în funcție de noua poziție a formulei. Legăturile relative au următoarea formă: A1, ВЗ.

O referință absolută într-o formulă este utilizată pentru a specifica o adresă fixă ​​a celulei. Când mutați sau copiați o formulă, referințele absolute nu se modifică. În referințele absolute, valoarea imuabilă a adresei celulei este precedată de un semn dolar (de exemplu, $A$1).

Dacă simbolul dolarului precede o literă (de exemplu: $A1), atunci coordonatele coloanei sunt absolute, iar coordonatele rândului este relativă. Dacă simbolul dolarului este în fața unui număr (de exemplu, A$1), atunci, dimpotrivă, coordonatele coloanei sunt relativ, iar coordonatele rândului este absolută. Astfel de legături se numesc mixte. De exemplu, să fie scrisă formula =A$1+$B1 în celula C1, care atunci când este copiată în celula D2 ia forma =B$1+$B2. Legăturile relative s-au schimbat când au fost copiate, dar linkurile absolute nu.

Conceptul de tip este unul dintre conceptele fundamentale ale oricărui limbaj de programare. Obiectele (constante, variabile, funcții, expresii) pe care programul operează aparțin unui anumit tip.

Tip este un set de valori pe care obiectele programului le pot lua și un set de operații permise asupra acestor valori.

De exemplu, valorile 1 și 2 sunt de tip întreg și pot fi adunate, înmulțite și alte operații aritmetice. Semnificațiile „monitor” și „Pascal” sunt de natură lingvistică; au propriul set de operații valide. În cele mai frecvent utilizate limbi, pot fi folosite doar tipuri strict definite, precunoscute. Pascal, împreună cu tipurile standard găsite în alte limbaje de nivel înalt, permite programatorului să-și creeze propriile tipuri.

Toate tipurile permise în limba Pascal sunt împărțite în două grupuri mari: simplu și complex (structurat).

Tip Gamă Mantissa, semne Memoria necesară (octeți)
REAL 2,9*10E-39..1,7*10E38 11-12
SINGUR 1,5*10E-45..3,4*10E38 7-8
DUBLA 5.0*10E-324..1.7*10E308 15-16
EXTINS 1,9*10E-4951..1,1*10E4932 19-20
COMP -2E+63+1..2E+63-1 10-20

Utilizarea eficientă a tipurilor SINGLE, DOUBLE, EXTEND, COMP este posibilă numai atunci când directiva ($N+) este activată. În mod implicit, este dezactivat. Pentru a rezolva problemele de inginerie și economice, valorile de tip REAL sunt suficiente.

Exemplu

Var Res, Summa, Itog: real;

boolean tipul de date este descris de identificatorul BOOLEAN. Variabilele și constantele de acest tip pot lua doar una din două valori: TRUE (adevărat) sau FALSE (fals).

Exemplu

Var Sel1, Sel2: boolean;

A,B,C,D: boolean;

Expresiile booleene ocupă 1 octet de memorie și sunt folosite în expresii logice și relaționale și pentru a controla ordinea în care sunt executate instrucțiunile programului.

Literal (caracter) tipul este descris de identificatorul standard CHAR. Constantele și variabilele de acest tip pot lua una dintre valorile tabelului de cod ASCII. Semnificația unei constante sau variabile de acest tip este cuprinsă în apostrofe.

De exemplu, Var Bukva, Znak, Simbol: char;

Bukva:=’A’; Znak:=’+’; Simbol:=’!’

Variabilele tip caracter ocupă 1 octet în memorie. Utilizarea datelor char în expresii aritmetice este interzisă. Operațiunile de comparare pot fi aplicate valorilor literale, rezultatul depinzând de numărul variabilei sau constantei literale din tabelul de coduri.

Pe lângă tipurile de date standard, Pascal acceptă tipuri scalare, definit de utilizator. Acestea includ enumerabilȘi interval tipuri . Aceste tipuri de date ocupă 1 octet în memorie, astfel încât orice tip personalizat nu poate conține mai mult de 255 de elemente. Utilizarea lor îmbunătățește semnificativ vizibilitatea programului, facilitează găsirea erorilor și economisește memorie.

Tip de enumerare este specificat direct prin listarea tuturor valorilor pe care le poate lua o variabilă de un anumit tip. Valorile individuale sunt separate prin virgule, iar întreaga listă este inclusă în paranteze.

Format

Tip<имя типа>=(<значение1, значение2, ..., значениеN>);

Var<идентификатор, ...>: < имя типа>;

Exemplu

Tip Sezon =(Primăvara, Vara, Toamna, Iarna);

Var S1, S2: Sezon;

Toamna: (septembrie, octombrie, noiembrie);

Acest exemplu arată un tip de date utilizator Season definit în mod explicit. Semnificațiile lor sunt determinate - desemnări ale anotimpurilor. Variabilele S1 și S2 pot lua doar una dintre valorile enumerate. O încercare de a le atribui orice altă valoare va provoca o întrerupere a software-ului. Al treilea tip de enumerare este anonim (nu are nume) și este specificat prin enumerarea valorilor în secțiunea Var. Toamna este o variabilă de acest tip și poate lua valorile Septembrie, Octombrie, Nowember. Astfel, poate fi specificat orice tip, dar acest lucru nu este întotdeauna acceptabil. Prima metodă este cu siguranță mai înțeleasă și mai consecventă cu natura limbajului Pascal.

Tip de interval vă permite să specificați două constante care definesc limitele intervalului de valori pentru o anumită variabilă. Pentru fiecare operație pe o variabilă de interval, compilatorul generează rutine de verificare pentru a determina dacă valoarea variabilei rămâne în intervalul specificat. Ambele constante trebuie să aparțină unuia dintre tipurile standard, altele decât cele reale. Valoarea primei constante trebuie să fie neapărat mai mică decât valoarea celei de-a doua.

Format

Tip<имя типа> = <константа1> .. <константа2>;

Var<идентификатор>: < имя типа>;

Exemplu

Tip Zile = 1.. 31;

Var Work_d, Free_d: Zile;

În acest exemplu variabilele Work_d, Free_d au tip Zileși poate lua orice valoare din intervalul 1. . 31.

Ieșirea din interval cauzează o întrerupere a software-ului.

Puteți defini un tip de interval definind limitele intervalului nu după valorile constantelor, ci după numele acestora:

Const Min = 1; Max = 31;

Tip Zile = Min .. Max;

Var Work_d, Free_d: Zile;

Tipuri structurate Tipurile de date se bazează pe tipuri scalare și pot conține diverse combinații ale acestora. Ele definesc o colecție ordonată de elemente scalare și se caracterizează prin tipul componentelor lor. Limbajul Pascal oferă următoarele tipuri de date structurate:

linie - o secvență de caractere închise în apostrofe;

matrice - un tip de date structurate format dintr-un număr fix de elemente de același tip, accesate prin index ;

o multime de - un set de obiecte selectate în funcție de o caracteristică sau un grup de caracteristici care pot fi considerate ca un întreg;

record - un set de un număr fix de componente de diferite tipuri;

fişier- o succesiune de componente de același tip și aceeași lungime.

Două tipuri mai structurate - procedural și obiect - sunt dificil de mapat la date într-o reprezentare convențională.

Poza 1- Un set de tipuri de bază ale limbajului Pascal

Orice date - constante, variabile, valori ale funcției - sunt caracterizate în Pascal printr-un tip de date.

Să definim conceptul tip de date. După cum se știe deja, toate obiectele programului (variabile, constante etc.) trebuie descrise.

Descrierile informează traducătorul, în primul rând, despre existența variabilelor și a altor obiecte utilizate, iar în al doilea rând, indică proprietățile acestor obiecte. De exemplu, o descriere a unei variabile a cărei valoare este un număr indică proprietățile numerelor. În mod formal, numerele pot fi întregi și reale (fracționale). În Pascal, ca și în alte limbaje de programare, numerele sunt împărțite în două tipuri: întreg(cuvânt întreg rezervat) și real(cuvânt rezervat real).

Separarea numerelor întregi într-un tip separat se explică prin faptul că într-un computer, numerele întregi și reale sunt reprezentate diferit: un număr întreg poate fi reprezentat absolut exact, dar un număr real are inevitabil o eroare finită, care este determinată de proprietăți. al traducătorului.

De exemplu, să fie variabila x de tip real și valoarea ei egală cu unu: x=1 . Valoarea corespunzătoare din memoria computerului poate fi 0,999999999, 1,000000001 sau 1,000000000. Dar dacă variabila x este declarată ca o variabilă de tip întreg, atunci unitatea din computer va fi reprezentată cu absolut precizie, iar variabila x nu va putea lua valori reale (fracționale) - la urma urmei, a fost descrisă ca o variabilă de tip întreg.

Deci tipul de date definește:

  • Reprezentare internă a datelor în memoria computerului;
  • setul de valori pe care cantitățile de acest tip le pot lua;
  • operațiuni care pot fi efectuate pe valori de acest tip.

Introducerea tipurilor de date este unul dintre conceptele de bază ale limbajului Pascal și anume că atunci când se efectuează o operație de atribuire a unei variabile la valoarea unei expresii, variabila și expresia trebuie să fie de același tip. Această verificare este efectuată de compilator, ceea ce simplifică foarte mult căutarea erorilor și duce la creșterea fiabilității programului.

Multe tipuri de date ale limbajului Turbo Pascal pot fi împărțite în două grupuri:

  • tipuri standard (predefinite). ;
  • tipuri definite de utilizator (tipuri definite de utilizator) .

Tipurile standard Turbo Pascal includ:

  • tipul întreg – număr întreg;
  • tip real – real;
  • tip de caracter – char;
  • tip boolean – boolean;
  • tip șir – șir ;
  • tip pointer – pointer;
  • tip text – text .

Tipurile de date personalizate sunt diferite combinații de tipuri standard.

Tipurile personalizate includ:

  • tip enumerat;
  • tip de interval;
  • tip de indicator;
  • tipuri structurate;
  • tip procedural.

cometariu. Este posibilă o altă clasificare a tipurilor de date, în funcție de care tipurile sunt împărțite în simple și complexe.

Tipurile simple includ: tipul întreg, tipul real, tipul caracterului, tipul logic, tipul enumerat și tipul intervalului.

Un tip complex reprezintă diverse combinații de tipuri simple (matrice, înregistrări, seturi, fișiere etc.)

Tipuri standard

Tipul de date standard este definit chiar de limbajul Pascal. Când folosiți tipuri standard într-un program, este suficient să indicați subsecțiunile tipurilor necesare (const, var) și apoi să descrieți constantele și variabilele utilizate în program. Nu este nevoie să folosiți subsecțiunea Tip.

De exemplu, dacă programul folosește numai variabile:

i,j – întreg (întregi);

x,y - real (real);

t,s - caracter (caracter);

a,b – boolean (logic),

atunci este nevoie doar de o subsecțiune de variabile - Var. Prin urmare, în partea descriptivă a programului, declarațiile de variabile sunt scrise după cum urmează:

Tipuri întregi

Datele de acest tip pot accepta doar valori întregi. Într-un computer, valorile de tip întreg sunt reprezentate cu absolut exactitate. Dacă variabila este negativă, atunci trebuie să fie precedată de semnul „–”; dacă variabila este pozitivă, atunci semnul „+” poate fi omis. Acest tip este necesar în cazul în care o anumită cantitate nu poate fi reprezentată aproximativ ca număr real. De exemplu, numărul de oameni, animale etc.

Exemple de scriere a valorilor întregi: 17, 0, 44789, -4, -127.

Gama de variație a datelor unui tip întreg este determinată de cinci tipuri standard de numere întregi și este prezentată în tabel:

Tip Gamă Dimensiunea în octeți
Shortint -128...+128 1
Întreg -32768...32767 2
Longint -2147483648...2147483647 4
octet 0...255 1
Cuvânt 0...65535 2

Ultimele două tipuri reprezintă doar numere pozitive, iar primele trei reprezintă atât numere pozitive, cât și negative.

În textul programului sau la introducerea datelor de tip întreg, valorile sunt scrise fără virgulă zecimală . Valorile reale ale variabilelor nu trebuie să depășească valorile admise tipul (Shortint, Integer, Longint, Byte, Word) care a fost folosit pentru a descrie variabila. Posibilele excese în timpul calculelor nu sunt controlate în niciun fel, ceea ce va duce la funcționarea incorectă a programului.

Un exemplu de utilizare a unei variabile întregi

Var a:intger; b:cuvânt; c:octet; Începe a:=300; (a este setat la 300) b:=300; (b stabilit la 300) c:=200; (c este setat la 200) a:=b+c; (a este setat la 500) c:=b; (Eroare! Variabila c poate lua doar valori de 255. Aici variabila c este setată la 500, ceea ce va duce la depășirea rezultatului.) Sfârșit.

Tipuri reale

Valorile tipurilor reale sunt reprezentate aproximativ într-un computer. Gama de variație a datelor de tip real este determinată de cinci tipuri standard: real (Real), precizie simplă (Single), precizie dublă (Dublu), precizie extinsă (Extended), complex (Comp) și este prezentat în tabel:

Tip Gamă Numărul de cifre semnificative Dimensiunea în octeți
Real 2.9E-39...1.7E+38 11-12 6
Singur 1.5E-45...3.4E+38 >7-8 4
Dubla 5E-324...1.7E+308 15-16 8
Extins 3.4E-4951...1.1E+4932 19-20 10
Comp -2E+63+1...+2E+63-1 19-20 8

Numerele reale pot fi reprezentate în două formate: virgulă fixă ​​și virgulă mobilă.

Formatul pentru scrierea unui număr cu virgulă fixă ​​este același cu notația matematică obișnuită pentru un număr zecimal cu o parte fracțională. Partea fracțională este separată de întreaga parte folosind un punct, de exemplu

34.5, -4.0, 77.001, 100.56

Formatul de notație în virgulă mobilă este utilizat atunci când scrieți numere foarte mari sau foarte mici. În acest format, numărul dinaintea „E” este înmulțit cu numărul 10 la puterea de după „E”.

1E-4 1*10-4
3,4574E+3 3.4574*10+3
4,51E+1 4.51*10+1

Exemple de numere în virgulă mobilă:

Număr Înregistrare în Pascal
0,0001 1E-4
3457,4 34574E-1
45,1 451E-1
40000 4E+4
124 0,124E+3
124 1,24E+2
124 12,4E+1
124 1240E-1
124 12400E-2

Tabelul de la 5 la 9 rânduri arată o înregistrare a aceluiași număr 124. Prin schimbarea poziției punctului zecimal în mantisă (punctul „plutește”, de unde și denumirea „înregistrarea unui număr în virgulă mobilă”) și în același timp modificând valoarea comenzii, puteți selecta cele mai potrivite numere de înregistrare.

Un exemplu de descriere a variabilelor de tip real.

Tip de caracter

Valorile tipului de caractere sunt caractere care pot fi tastate pe tastatura computerului. Acest lucru vă permite să prezentați text în program și să efectuați diferite operații asupra acestuia: inserați, ștergeți litere și cuvinte individuale, formatare etc.

Un tip de caracter este desemnat de cuvântul rezervat Char și este conceput pentru a stoca un singur caracter. Datele de caractere ocupă un octet în memorie.

Formatul declarației variabilelor simbolice:

<имя переменной>: Char;

La definirea valorii unei variabile caracter, caracterul este scris cu apostrofe. În plus, puteți specifica caracterul necesar specificând direct valoarea codului său numeric ASCII. În acest caz, trebuie să precedați numărul care indică codul ASCII al caracterului solicitat cu semnul #.

Un exemplu de utilizare a variabilelor tip caracter:

Var c:char; (c este o variabilă de tip caracter) Begin c:=’A’; (variabilei c i se atribuie caracterul 'A') c:=#65; (variabilei c i se atribuie și caracterul A. Codul său ASCII este 65) c:=’5’; (variabilei c i se atribuie simbolul 5, End. Aici 5 nu mai este un număr)

tip boolean

Tipul de date logic se numește Boolean după matematicianul englez George Boole, creatorul domeniului matematicii - logica matematică.

Format pentru declararea unei variabile de tip boolean:

<имя переменной>: boolean;

Datele de acest tip pot lua doar două valori:

  • Adevarat adevarat;
  • Falsul este o minciună.

Datele logice sunt utilizate pe scară largă în verificarea validității anumitor condiții și în compararea cantităților. Rezultatul poate fi adevărat sau fals.

Pentru a compara datele, sunt furnizate următoarele operații relaționale:

Un exemplu de utilizare a operațiilor relaționale:

relația 5>3, rezultat adevărat;

relația 5=3, rezultat fals.

Un exemplu de utilizare a variabilelor de tip boolean.

Var a,b:boolean; (a,b sunt variabile de tip logic) Begin a:=True; (variabilei a i se atribuie valoarea „adevărat”) b:=fals; (variabila b este setată la fals) End.

constante

Numerele întregi, numerele reale, caracterele, șirurile de caractere și constantele logice pot fi folosite ca constante.

O constantă trebuie declarată în partea sa descriptivă folosind cuvântul rezervat const.

Format de declarație constantă

Const<имя константы>= <значение>;

Dacă un program folosește mai multe constante, este permis un singur cuvânt cheie Const, iar descrierea fiecărei constante se termină cu punct și virgulă. Un bloc constant se termină cu declararea unei alte secțiuni sau declararea unui bloc de instrucțiuni executabile.

Const (declarație secțiune constantă) an=2003; (constanta de tip intreg, deoarece nu exista virgula zecimala in inregistrare) time=14,05; (constantă de tip real) N=24; (constanta de tip intreg, deoarece nu exista virgula zecimala in notatie) P=3,14; (constantă de tip real) A=adevărat; (constantă booleană) str1=’7’; (constantă tip caracter) str2=’A’; (constantă tip caracter) str3=’Turbo’; (constantă de tip șir) Var (declarație secțiune variabilă) X,y:întreg; (variabile de tip întreg)

Tipuri personalizate

Din setul de tipuri de utilizatori, vom lua în considerare numai

  • tip enumerat;
  • tip de interval.

Vom avea nevoie de aceste două tipuri atunci când studiem tablourile.

Tip de enumerare

Un tip de date enumerate descrie noi tipuri de date ale căror valori sunt definite de programator. Un tip enumerat este specificat printr-o enumerare a valorilor pe care le poate primi. Fiecare valoare este denumită printr-un identificator și este situată într-o listă înconjurată de paranteze. Un tip enumerat este un tip de date definit de utilizator, astfel încât declarația sa de tip începe cu cuvântul rezervat TYPE.

Format de tip enumerare:

<имя типа>= (constant1, constant2,..., constantN);

Unde
constant1 , constant2 ,..., constantN – un set ordonat de valori identificatoare tratate ca constante.

Un exemplu de descriere a tipului enumerat:

Tip minge=(unu, doi, trei, patru, cinci); var t:ball;

Aici bila este numele tipului enumerat; unu, doi, trei, patru, cinci – constante; t este o variabilă care poate lua orice valoare constantă.

Într-un tip enumerat, o constantă este un identificator, deci nu este citată și nu poate fi un număr. Astfel, într-un tip enumerat, o constantă este un tip special de constantă care nu poate fi:

  • constante de tip numeric: 1, 2, 3, 4 etc.;
  • constante de tip de caracter: „a”, „s”, „1”, „3”, etc.;
  • constante de tip șir: „primul”, „al doilea”, etc.

În plus, operațiile aritmetice și procedurile standard de intrare și ieșire Citire și Scriere nu sunt aplicabile valorilor de acest tip.

Un exemplu de utilizare a variabilelor enumerate:

Tip zile = (luni, marți, miercuri, joi, vineri, sâmbătă, duminică); Var zi: zile; begin if day = Sunday then writeln(‘Astăzi este duminică!’); Sfârşit.

Elementele incluse în definiția unui tip enumerat sunt considerate a fi ordonate în ordinea în care sunt enumerate. Numerotarea începe de la zero. Prin urmare, în exemplul dat, zilele săptămânii au următoarele numere de serie

Pentru a determina în mod programatic numărul ordinal, este utilizată funcția Ord().

În exemplul nostru, numerele de ordine sunt egale:

Ord(luni) = 0;

Ord(sâmbătă) = 5;

Ord (duminică) = 6.

Tip de interval

Dacă o variabilă nu acceptă toate valorile tipului său, ci doar valorile conținute într-un anumit interval, atunci acest tip de date se numește tip de interval. Tipul interval este adesea numit tip limitat și tip interval. Un tip de interval este definit de limitele valorilor sale:

<минимальное значение>..<максимальное значение>

  • două caractere „..” sunt tratate ca un singur caracter, deci nu sunt permise spații între ele;
  • marginea din stânga a intervalului nu trebuie să depășească marginea din dreapta.

Tipul de interval este un tip de date definit de utilizator, astfel încât declarația sa de tip începe cu cuvântul funcție TYPE.

Un exemplu de descriere a tipului de interval:

Tip cifră = 1..10; luna = 1..31; lat = 'A'..'Z';

Bazele programării
Fiecare profesionist a fost cândva un ceainic. Cu siguranță ești familiarizat cu starea când „nu știi cum să începi să gândești pentru a veni cu așa ceva”. Probabil te-ai confruntat cu o situație în care pur și simplu nu știi de unde să începi. Această carte se adresează tocmai acestor oameni care ar dori să devină programatori, dar care nu au nicio idee cum să înceapă această cale. ...

Aproape toate tipurile de date întregi sunt . Aceste tipuri de date reprezintă numere întregi într-un anumit interval. Numele specifice ale tipurilor întregi și ale intervalelor de valori depind de limbajul de programare specific, de compilator și de modul de compilare. Puteți afla mai multe despre acest lucru în documentația compilatorului.

De exemplu, tipul de date Întregîn Delphi are un interval de -2147483648…2147483647, în timp ce în Turbo Pascal tipul de date Întreg reprezintă numere din intervalul -35768...32767. În Free Pascal, intervalul de valori de tip Întreg determinat de modul selectat.

Deoarece Lazarus folosește compilatorul Free Pascal, tot ce se spune despre tipurile de date în legătură cu Free Pascal este valabil și pentru Lazarus.

Deci, tipurile de date întregi ale lui Free Pascal sunt listate în Tabelul 13.1.

Tabelul 13.1. Tipuri gratuite de date Pascal Integer (Lazarus).

Tip Dimensiune, octeți Gama de valori
octet 1 0…255
Shortint 1 -128…127
Smallint 2 -35768…32767
Cuvânt 2 0…65535
Întreg 2 sau 4 Depinde de modul de compilare
Cardinal 4 0…4294967295
Longint 4 -2147483648…2147483647
Cuvânt lung 4 0...4294967295
Int64 8 -9223372036854775808...9223372036854775807
QWord 8 0...18446744073709551615

NOTĂ
Tastați în Free Pascal Int64Și QWord nu sunt! Aceasta înseamnă că nu le puteți utiliza, de exemplu, pentru variabilele de index în bucle. Totuși, le-am prezentat aici pentru a nu le descrie separat în viitor și pentru a colecta toate tipurile de numere întregi Free Pascal într-un singur loc. Dacă nu înțelegeți unele cuvinte, nu vă alarmați. La vremea potrivită, vă voi spune despre totul mai detaliat.

Și acum câteva explicații despre tabel.

Într-o coloană TIP sunt dați identificatori de tip de date (cuvinte cheie care indică compilatorului cărui tip aparțin anumite date). Veți învăța cum să utilizați acești identificatori în următoarele lecții.

Într-o coloană MĂRIMEA indică dimensiunea pe care o ocupă tipul de date în memoria computerului. De exemplu, un număr întreg pozitiv poate fi reprezentat prin diferite tipuri: octet, Cuvânt, Cardinal etc. Cu toate acestea, un număr ca Cardinal va ocupa 4 octeți în memorie, în timp ce un număr ca octet– doar 1 octet. Prin urmare, dacă știți sigur că numărul cu care lucrați nu va lua niciodată o valoare mai mare de 255, atunci este mai bine să-l definiți ca tip octet, deoarece aceasta va economisi spațiu în memoria computerului dvs. Deși nu totul este atât de simplu aici (nuanțele de distribuție a memoriei și a altor resurse computerizate depășesc domeniul de aplicare).

Într-o coloană GAMĂ specifică intervalul de valori pe care operează tipul de date. De exemplu, un număr ca octet poate lua valori de la 0 la 255.

Acum pentru practică. Să scriem un program care afișează intervalele de valori ale tuturor tipurilor de date întregi. Codul sursă pentru acest program este prezentat mai jos:

Lista 13.1. Un program pentru afișarea intervalelor de numere întregi. program td; ($mode objfpc)($H+) folosește ($IFDEF UNIX)($IFDEF UseCThreads) cthreads, ($ENDIF)($ENDIF) Clase (puteți adăuga unități după aceasta); începe Writeln("Oct: ", Scăzut(octet), "..", Înalt(octet)); Writeln("Scurt: ", Low(Scurtint), "..", High(Scurtint)); Writeln("Mic: ", Scăzut(Mic), "..", Ridicat(Mic)); Writeln("Cuvânt: ", Scăzut(Cuvânt), "..", Ridicat(Cuvânt)); Writeln("Integer: ", Low(Integer), "..", High(Integer)); Writeln("Cardinal: ", Scăzut(Cardinal), "..", Înalt(Cardinal)); Writeln("Longint: ", Low(Longint), "..", High(Longint)); Writeln("Cuvânt lung: ", Scăzut(Cuvânt lung), "..", Mare(Cuvânt lung)); Writeln("Int64: ", Low(Int64), "..", High(Int64)); Writeln("QWord: ", Low(QWord), "..", High(QWord)); Readln; Sfârşit.

Funcție standard Scăzut definește valoarea minimă a tipului de date. Funtskia Înalt definește valoarea maximă. Cu functii ScrieLnȘi ReadLn deja vă cunoașteți puțin. Vom vorbi mai detaliat despre subrutine (proceduri și funcții) în secțiunea corespunzătoare.

În cele din urmă, vă voi spune cum sunt scrise datele întregi în program. Da, la fel ca peste tot - doar scrieți numărul, fără ghilimele sau orice simboluri suplimentare. De exemplu, așa

10
178
35278

Adevărat, acest lucru se aplică numerelor din sistemul numeric zecimal. Cu siguranță știți deja că există și alte sisteme. Cele mai utilizate sisteme numerice sunt cele binare, zecimale și hexazecimale.

Free Pascal acceptă patru formate întregi:

  1. Notație zecimală. Doar un număr, cum ar fi 10.
  2. Notație hexazecimală. Un număr prefixat cu $. De exemplu, numărul hexazecimal $10 este egal cu numărul zecimal 16.
  3. Notație octală. Un număr prefixat cu &. De exemplu, octal &10 este egal cu zecimalul 8.
  4. Notație binară. Un număr prefixat cu %. De exemplu, numărul binar %10 este egal cu numărul zecimal 2.

Teme pentru acasă:

Creați un program care afișează intervale de valori întregi (Listarea 13.1). Compilați programul și rulați-l. Asigurați-vă că aceste valori corespund cu cele prezentate în Tabelul 13.1.

În codul sursă al programului, găsiți linia care setează modul de compilare:

($mod objfpc)($H+)

În această linie, în loc de cuvânt objfpc scrie cuvântul tp. Adică, linia finală ar trebui să arate astfel:

($mod tp)($H+)

Lansa programul. Uitați-vă la intervalul de valori ale tipului Întreg. A trage concluzii.

Învață să gândești ca un programator, adică logic. Nimeni nu va mesteca totul pentru tine până la pensie, așa cum fac eu acum. Trebuie să te obișnuiești să gândești singur. În caz contrar, veți aluneca în „principiul învățării maimuțelor” și atunci șansele tale de a deveni un programator grozav vor fi aproape de zero. Pentru a vă ajuta să nu alunecați la nivelul „înghesuirii”, voi lăsa periodic lacune în învățarea dvs., astfel încât să încercați să vă dați seama de unele lucruri.

Este mult mai bine dacă îți dai seama singur decizie gresita, veți găsi singur greșeala și o veți corecta singur, în loc să folosiți întotdeauna soluțiile corecte ale altora și să le copiați prostesc.

Cele mai importante elemente ale unui program sunt variabilele. Ele influențează cursul evenimentelor din program în timpul execuției acestuia. De exemplu, dacă nu am fi specificat valoarea variabilei Nume în , cui i-ar fi adresat rezultatul de salut din program?

Variabilele pot conține date complet diferite. De exemplu, o variabilă ar putea stoca numele cuiva, o alta ar putea stoca anul de naștere, o a treia ar putea stoca înălțimea, etc. Astfel de date diferite sunt reprezentate de computer în moduri diferite. Numele este un șir de caractere, anul nașterii este un număr întreg, iar înălțimea este un număr real (de exemplu, înălțimea este de 1,72 m).

Modul în care un computer reprezintă datele este determinat de acestea tip. În plus, tipul de date determină ce acțiuni pot fi efectuate asupra datelor respective.

Principalele tipuri de date standard ale limbajului Turbo Pascal sunt enumerate mai jos:

  1. ÎNTREG– date întregi în intervalul de la –32768 la 32767, ocupând doi octeți în memorie;
  2. REAL– numere reale în intervalul de la 2,9´10 -39 (2,9E-39) la 1,7´10 38 (1,7E38), ocupă șase octeți;
  3. CHAR– caracter separat, un octet;
  4. ŞIR– un șir de caractere, numărul de caractere dintr-o linie (lungimea șirului) este limitat de numărul N între paranteze drepte, ocupă N+1 octeți (dacă nu este specificat numărul N, atunci lungimea maximă a liniei este 255 de caractere);
  5. BOOLEAN– tip logic, are două valori: FALSE (fals) și TRUE (adevărat), un octet.

Rețineți că tipurile INTEGER, CHAR și BOOLEAN sunt clasificate ca ordinal tipuri ordinale.

După cum probabil vă amintiți, atunci când descrieți o variabilă, după numele acesteia sunt plasate două puncte și apoi este indicat tipul. Dacă mai multe variabile au același tip, numele lor pot fi separate prin virgulă.

Un exemplu de descriere a variabilelor de diferite tipuri:

Delphi/Pascal

var a, b, c: întreg; suma: real; Alpha, Beta: char; S: șir; S_1: sfoară; t: boolean;

a, b, c: întreg;

suma: real;

Alpha, Beta: char;

S: sfoară[25];

S_1: sfoară;

t: boolean;

Rețineți că variabila S_1 este un șir de caractere, dar declarația sa nu specifică o lungime. În acest caz, compilatorul însuși stabilește lungimea maximă posibilă - 255 de caractere.

Există și alte tipuri de date predefinite pentru stocarea numerelor întregi și reale. Caracteristicile lor sunt prezentate în tabelele de mai jos. Comparați aceste tipuri cu tipurile INTEGER și REAL prezentate de asemenea în tabele.

Gamă

Dimensiunea în octeți

SCURTARE
ÎNTREG
LONGINT

2147483648 .. 2147483647

BYTE
CUVÂNT

Tipuri de date reale

Gamă

Numărul de cifre semnificative

Dimensiunea în octeți

REAL

2,9´10 -39 .. 1,7´10 3 8

SINGUR

1,5´10 – 45 .. 3,4´10 3 8

DUBLA

5,0´10 -3 24 .. 1,7´10 3 08

EXTINS

3,4´10 -4932 .. 1,1´10 49 32

COMP

2 63 +1 .. 2 63 -1

Ce tip de date să utilizați

Există atât de multe tipuri diferite, ați putea spune, deci pe care ar trebui să le folosiți?
Depinde de sarcina care ți-a fost atribuită. De exemplu, aveți nevoie de o variabilă în care veți stoca înălțimea unei anumite persoane (valoare reală): în acest caz, este suficient să folosiți tipul SINGUL. Dacă utilizați o variabilă pentru a număra numărul anumitor obiecte (o valoare întreagă pozitivă), atunci aflați dacă acest număr poate fi mai mare de 255, dacă nu, utilizați BYTE, dacă se poate, nu vă puteți descurca fără WORD și, în unele cazuri, cazurile LONGINT pot fi, de asemenea, necesare.

Pentru a afla mai multe despre diferitele tipuri, apăsați Shift+F1 în Turbo Pascal (va apărea o fereastră de index de ajutor), apoi selectați obiectul care vă interesează (de exemplu, tastați „type” sau „real”).