Editura Peter otryvok din cartea de programare Delphi

Că operatorii efectuează toate acțiunile din program. Acest capitol descrie operatorii Delphi, precum și unele built-in functii.

5.1. Operatorul de atribuire

Operatorul de atribuire în Delphi este format din colon și semnul egal, în scris una după alta. În partea stângă a operatorului de atribuire este scris variabilă pe care doriți să atribuiți o valoare, precum și dreptul - expresia care urmează să fie evaluate.

Când introduceți expresii trebuie să ne amintim că acestea trebuie să fie scrise într-o singură linie. Operațiunile sunt efectuate de la stânga la dreapta, dar înmulțirea și împărțirea întotdeauna la adunare și scădere. Pentru a forța Delphi pentru a efectua, de exemplu, adăugarea înainte de multiplicare, aveți nevoie pentru a pune între paranteze:

În primul caz, atribuie o valoare variabilă 21. Cea de a doua Multiplicarea executat primele 2 până la 3, și în cele din urmă obține 11.

Apropo, puteți adăuga, de asemenea, o linie, folosind plus, dar nu poate fi dedusă de semnul minus.

5.2. Operatorii I / O

Foarte important în declarațiile Pascal I / O în Delphi nu pare atât de important. La urma urmei, concluzia este acum pusă în aplicare prin intermediul componentelor de pe formularul și să citească datele, de asemenea.

Acest lucru este valabil și pentru aplicațiile care utilizează formularul ferestre. Dacă scrieți o aplicație consolă (arată ca o fereastră DOS), atunci este posibil să se utilizeze scrie, writeln, citiți, readln același mod ca și în Pascal.

De exemplu, n: = Citire așteptare pentru valorile de intrare de la tastatură și apoi plasează această valoare într-un n variabil.

Declarație readln citește de caractere de la linia de tastatură, iar restul este folosit ca citite. Scrierea și operatorii writeln se aplică la valorile variabile de ieșire.

Acești operatori pot fi utile atunci când aveți nevoie pentru a citi sau a scrie un fișier. Lucrul cu fișiere este considerată în cap. 8, asa ca dau doar exemple de utilizare a acestor operatori.

Pentru a citi dintr-un fișier, utilizați Citiți și readln.

5.3. Operatorul de transfer necondiționat

Operator salt necondiționat Goto depășit. Utilizarea nu este recomandată, deoarece este de multe ori utilizarea acestui operator conduce la erori în program și confuzia, în afară de acum există alte tehnici, de programare mai avansate. Dar știu acest transfer necondiționat operatorul, fără îndoială, este necesară. Dintr-o dată, cu ajutorul vă va crea ceva interesant.

Declarație Du-te aruncă programul într-o altă locație. Este mai bine pentru a arăta acest lucru cu un exemplu.

Procedura TForm1.GotoExample;
eticheta m;
începe
a: = 5;
b: = 25;
Goto m;
a: = 3;
m:
se încheie;

Aici procedura este efectuată înainte de declarația goto și apoi sare imediat la eticheta m. Linia a: = 3; Nu este îndeplinită. Etichetele trebuie să fie descrise în secțiunea etichetă.

5.4. Operatorii de transfer condiționat

Pentru a verifica o condiție și de a efectua o anumită parte a programului, există un operator în cazul în care. În cel mai simplu caz, este scris ca:

în cazul în care a = 5, apoi a: = a * 2;

Dacă condiția este adevărată a = 5 (în acest caz), atunci acțiunea este înregistrată după atunci. Puteți efectua mai multe acțiuni simultan pentru a le potrivi într-o instrucțiune compusă începe să-end.

în cazul în care a = 5, apoi începe o: = a * 2; b: = Adevărat; se încheie; Astfel, toate acțiunile trebuie să fie efectuate între cuvinte înregistrate începe și se termină (declarație compus). Vă rugăm să rețineți că nu este plasat după virgulă începe, deoarece acesta continuă un operator (la final). Și între începe și se termină la sfârșitul rândurilor sunt setate o virgulă.

If poate fi scris așa cum se arată în Listarea 5.5.

Listarea 5.5 în cazul în care o = 5, atunci începe capăt altceva începe de capăt; Apoi, în cazul în care o = 5, atunci primul set de acțiuni. În cazul în care nu este egal cu cinci, celelalte operații sunt efectuate (scrise după cuvântul altceva).

alegerea declarație de caz

Uneori nu este convenabil de a folosi în cazul în care, după cum declarația caz, care verifică doar o mulțime de valori.

Listarea 5.6 cazul A de 1: s: = 'a'; 2: s: = 'două'; 4: s: = 'trei'; 5: s: = 'patru'; 6: s: = 'cinci'; 8: s: = 'șase'; altfel s: = ''; se încheie; // caz în exemplul de mai sus, operatorul verifică cazul valorii variabilei A cu exemplele de realizare de mai sus. Dacă A = 1, primul rând este executat, în cazul în care A = 4 - al treilea etc. Dacă A nu este egal cu oricare dintre valorile, execută apoi s: .. = „“ După altceva (altcineva este opțional).

5.6. cicluri

În Delphi, a pus potrivi perfect un limbaj de programare decent, puteți face o buclă cu un număr cunoscut de repetiții ale buclei, cu o condiție prealabilă și un ciclu postconditie.

Ciclul se repetă cu o cantitate cunoscută pentru

Ciclul cu un număr cunoscut de repetiții este pentru. Iată exemplul său:

pentru i: = 1 până la 20 s fac: = s + '';

In ciclul indicat pentru valorile inițiale și finale ale variabilei (în acest caz, variabila i sunt egale cu 1 și respectiv, 20). Acțiunile care au nevoie pentru a efectua într-o buclă, indicată după do. După ce face, de altfel, poate fi începe să-end un operator integral.

Ciclul cu condiție prealabilă în timp ce-do

Acest ciclu este adesea folosit, de exemplu, atunci când citirea și scrierea fișierelor.

Listarea 5.7 s: = ''; i: = 0 în timp ce i<20 do begin s := s + ' '; i := i + 1; end; Цикл выполняется, пока выполняется условие (в данном случае i<20). Как видите, в теле цикла i каждый раз увеличивается на единицу, и как только перестанет выполняться условие i<20, цикл прекратится. К переменной s при каждом выполнении цикла прибавляется пробел. В итоге должно быть двадцать пробелов.

Puteți face o buclă infinită, dacă vom scrie bucla antet, după cum urmează: în timp ce adevărații. Dacă executați un program cu un astfel de ciclu, apoi îngheață. Prin urmare, aceste cicluri sunt de obicei scrise cu ieșirea din bucla.

Pentru a ieși din ciclul este operatorul Break. Continua declarație este utilizat atunci când aveți nevoie pentru a merge la începutul ciclului.

Ciclul cu postconditie se repetă până-

Acest ciclu este foarte similar cu, dar condiția nu este plasată la începutul și la sfârșitul ciclului. Bucla este executată până când condiția este falsă (în general, în comparație cu while-do, atunci opusul este adevărat).

Listarea 5.8 s: = ''; i: = 0; repeta s: = s + ''; i: = i + 1; până i> 19; Listarea 5.8 prezintă același ciclu ca și cea care a fost realizat prin while-do (vezi. Listarea 5.7). Rețineți că, în acest ciclu nu trebuie să scrie un begin-end. Ciclul de corp este ceea ce este scris după repetarea până. Bucla este executată până când condiția i> 19 este falsă.

Alte cicluri de diferență în timp ce-faci și repetate până la acea primă generală nu poate fi îndeplinită, în cazul în care condiția este falsă, și repetată cel puțin până în momentul necesar să fie executat.

5.7. Operații cu numere

Operații cu numere, tipurile și caractere, și rezultatele acestora sunt prezentate în tabelul. 5.1.

Tabelul 5.1. Operații cu numere, tipuri și simboluri

Returnează un număr aleator de la zero la (X-1). Înainte de a începe necesitatea de a efectua Aleator Aleator. Ultimul care a făcut o dată este de ajuns

Un pic despre modul de utilizare a scăzut, Înalt, sizeof. Ai nevoie de a declara o variabilă de tip ale cărui valori pe care doriți să învețe și apoi se aplică Low, Înalt sau sizeof deja această variabilă.

Listarea 5.9 var m: Integer; începe m: = Low (m); // m să fie valoarea minimă de tip Integer final;

5.8. Funcțiile de bază matematice

Cele mai simple funcții matematice pot fi numite, fără a atașa biblioteci suplimentare (SysUtils destul de standard și de sistem, care anunță de obicei Delphi în mod automat atunci când creați un nou proiect), dar unele caracteristici necesită conectivitate Math Library (foloseste Math).

Funcțiile matematice de bază sunt prezentate în tabelul. 5.2.

Tabelul 5.2. Unii (aritmetica, trigonometrice) funcția matematică