Turbo Pascal. În timp ce ... buclă cu condiție prealabilă
Turbo Pascal, deși nu este o aplicație preferată la nivel mondial pentru programare, dar creatorii care fac primii pași în scrierea de software, încep să se familiarizeze cu acest mediu. Oferă o idee despre ramificații, operatori, funcții și proceduri, precum și multe alte lucruri. De exemplu, în timp ce învățați, programatorul va întâlni cicluri în Turbo Pascal: În timp ce, pentru și repet.
conținut
Conceptul de ciclu și varietatea acestuia
Un ciclu se numește acțiuni repetate. În acest mediu, folosim:
- cu (Pentru hellip- tohellip- do);
- cu o precondiție (În timp ce hellip- do);
- cu o condiție ulterioară (Repeat hellip- până).
Primul tip este folosit când este cunoscut în avans câți pași pentru a rezolva problema. Cu toate acestea, există o serie de sarcini atunci când nu există informații despre cât de multe ori o acțiune sau o altă acțiune va fi repetată. În acest caz, în ciclul Pascal În timp ce devine indispensabil, ca, în principiu, și Repeat.
Structura ciclului
Care este esența lucrării în ciclurile Pascal While, For and Repeat? Aceste structuri au un antet și un corp. Prima componentă specifică variabilele care vor "funcționa", stabilește condițiile pentru verificarea adevărului, perioada în care corpul va fi executat. În cea de-a doua componentă, sunt scrise expresii care trebuie folosite dacă condiția este îndeplinită, adică este adevărată și nu falsă.
Atunci când repetarea este efectuată pe ultima linie de cod, atunci se întoarce la antetul în care este verificată condiția. În cazul adevărului, operațiunile se repetă, iar în caz de neîndeplinire a condiției, programul "lasă" ciclul și efectuează operațiuni ulterioare.
Ciclul "În timp" arată astfel. Pascal ABC și programe similare necesită scrierea acestui cod:
- în timp ce condiție do;
- Începe;
- Corpul ciclului-
- Sfârșit.
În cazul în care 1 operator (1 acțiune) este executat în corpul ciclului, atunci "parantezele" beginhellip-end pot fi omise.
Graficul de funcționare a ciclului
În Turbo Pascal În timp ce are următoarele caracteristici:
- În interiorul structurii pot fi utilizate condiții complexe;
- după cuvântul, nu ar trebui să existe un punct și virgulă (aceasta este considerată o eroare în Turbo Pascal și Pascal ABC);
- o variabilă, o constantă sau o expresie care servește ca ieșire falsă a subrutinei lor trebuie să fie de tip logic, adică Boolean.
Diagrama bloc a acestei versiuni a ciclului arată după cum urmează. Afișează secvența de acțiuni.
Algoritmul ciclului
În cele mai simple medii de programare, inclusiv Pascal ABC, În timp ce buclă funcționează în conformitate cu următorul principiu:
- iterațiile date, adică repetițiile, vor trece de atâtea ori până când condiția este adevărată (True);
- de îndată ce condiția nu este satisfăcută și dă un răspuns Fals (sau altfel "False"), declarația iese din bucla;
- de îndată ce sa întâmplat acest lucru, programul "a mers" în construcție, după ciclu.
Aceasta este o diferență esențială dintre În timp de la Repetare, adică un ciclu cu o condiție prealabilă de la o condiție ulterioară.
Este foarte important să furnizați în corpul bucla schimbarea finală a variabilei specificate în rubrica În timp ce faceți. În orice caz, ar trebui să vină într-o zi o situație care să dea valoarea False. În caz contrar, buclă va apărea, și apoi trebuie să utilizați măsuri suplimentare pentru a ieși din compilator. Astfel de erori sunt considerate nepoliticoase și de neiertat.
Cum pot ieși din program în timpul buclei?
Deseori, situația apare atunci când operatorul While Pascal eliberează o buclă în codul scris. Ce înseamnă asta? Iterația se repetă de nenumărate ori, deoarece condiția este întotdeauna adevărată. De exemplu, aici este un fragment al programului:
- În timp ce 2> 1 nu;
- Scrieți (1).
În acest caz, pentru a opri sarcina, trebuie doar să apăsați CTRL + F2.
Există, de asemenea, 2 moduri de a controla acest comportament al programului. De exemplu, dacă o scrie Continue cod care trece controlul la începutul structurii ciclice (aici starea de ieșire în buclă este monitorizată, adică. Execuție E a iterația curentă este întreruptă). Apoi, comanda este trecută în buclă În timp la verificarea anterioară.
Instrucțiunea Break este capabilă să întrerupă execuția întregii bucla și să treacă controlul la următoarea iterație. Aici, ieșirea din structură nu va fi controlată. Imaginea prezintă exemple de utilizare a acestor operatori.
Rezolvarea problemelor
Luați în considerare bucla În timp. Obiectivul lui Pascal este de a rezolva o mare varietate. Să ne ocupăm de cea mai simplă în timp ce înțelegem principiul muncii. S-au rezolvat sarcinile din programul Pascal ABC. Dar imagini ale mediului clasic Turbo Pascal vor fi prezentate pentru comparatie.
Activitatea 1: este dată funcția Y = 5-X ^ 2/2. Scrieți un tabel de valori în pașii sh = 0.5 pe intervalul [-5-5].
Algoritmul acțiunilor:
- setați valoarea inițială pentru variabila X egală cu -5 (adică începutul intervalului);
- calcula valoarea Y până când variabila x ajunge la sfârșitul segmentului specificat;
- afișează valorile funcției și ale absciselor (X);
- creșteți X cu etapa dată.
Acesta este codul din programul Pascal ABC.
Cum arată codul în Turbo Pascal. Imaginea de mai jos arată acest lucru în mod clar.
Activitatea 2: Având o matrice A, constând din numere pozitive și numere negative. Acesta conține 10 elemente. Este necesar să se formeze o matrice B, în care vor fi afișate elemente pozitive ale matricei A cu un indice parțial. Afișați pe ecran suma de pătrate din numărul matricei noi.
Algoritmul acțiunilor:
- Este necesar să scrieți o subrutină care va "funcționa" numai cu elemente ale matricei A care au un indice de echilibru. În buclă, valoarea variabilei care este responsabilă pentru paritatea indicelui va crește cu 2.
- Dacă numărul este un indice chiar din matricea A corespunde condiției x> 0, contor matrice este incrementat cu 1. Valoarea curentă a variabilei contor va fi indicele numărului de copii în matrice B.
- Inițial, summa, responsabilă de găsirea sumei pătratelor de numere pozitive, este atribuită 0. Apoi, operația va fi efectuată: se adaugă o valoare nouă a pătratului la suma anterioară.
- Nu vă speriați, dacă nu toate numerele pozitive s-au mutat de la o matrice la alta. Trebuie să fii atent. Mulți programatori novici rescriu codul într-o panică. Este necesar să studiem cu atenție situația: numere pozitive care sunt pe "locuri" chiar, adică având indici care sunt multiplii de 2.
Este necesară o urmărire manuală pentru a verifica corectitudinea calculelor. Uneori, cu ajutorul acestei metode, puteți identifica erorile care nu vin în ochii dvs. când verificați în mod normal codul scris.
Dacă efectuați calcule manuale, vă puteți asigura că programul funcționează corect. Aceasta, la rândul său, indică faptul că algoritmul pentru crearea codului este corect, secvența de acțiuni duce la un final logic.
- Programare. Cicluri cu parametru
- Blaise Pascal: viață și muncă
- Tipuri de bază și exemple de algoritmi ciclici
- Delphi postează în Pascal
- Cum de a învăța programarea de la zero în limbi de programare populare
- Ceaiul-hibrid a crescut Pascal
- Structura programului Pascal: programare pentru incepatori
- Un ciclu cu o condiție ulterioară și o buclă cu o condiție prealabilă
- Ce este Pascal. Programarea în Pascal
- Operatorii `Pascal`. Limba de programare Pascal
- Mediul de programare `Pascal ABC`
- Grafica în Pascal: trăsături, moduri de creare și exemple
- Pascal Verlaine este un tânăr șofer promițător
- Conversia de tip. Funcții rotunde și Trunc în Pascal
- Ciclul pentru: Pascal pentru începători
- Factorial în Pascal: cum se calculează. Probe de proba
- Operatorul de atribuire în "Pascal": ce se intenționează, ce acțiuni sunt efectuate
- Proceduri standard și funcții în Pascal
- Actrita Pascal Hatton: Cele mai bune filme
- Care sunt tipurile de date din Pascal?
- Tip structurat - matrice unidimensională