Învățarea Pascal

Proceduri și funcții

În Pascal, ca și în cele mai multe limbaje de programare oferă mijloacele necesare pentru a executa un algoritm auxiliar ca o subrutină. Acest lucru este util atunci când un subalgoritmi reapare în mod repetat în program sau este posibil să se utilizeze unele fragmente a dezvoltat algoritmi anterior. În plus, subrutine sunt folosite pentru a sparge programe mari în părți semantice separate, în conformitate cu principiul modular în programare.







Subalgoritmi pentru utilizare ca o subrutină trebuie să alocați un nume și descrie algoritmul conform regulilor de Pascal. În viitor, dacă este necesar, aduce în program, făcând referire la apelul subrutinei în numele locul potrivit subalgoritmi care corespunde cu o listă de date de intrare și de ieșire. O astfel de trimitere conduce la execuție în cadrul operatorilor de sub-program de lucru cu aceste date. După efectuarea lucrărilor rutine continuă cu echipa care urmeaza imediat apelul subrutinei.

În Pascal există două tipuri de rutine - proceduri și funcții.

Procedurile și funcțiile sunt plasate în secțiunea din descrierile programului. Pentru schimbul de informații între procedurile și funcțiile, precum și alte blocuri de program există un mecanism de parametri de intrare și de ieșire. Parametrii de intrare numita valoare transmise de rutina de asteptare in bloc (date de intrare pentru o subrutină), iar ieșirea - transmisă la subrutina de asteptare a blocului (rezultatele din subrutina).

Aceeași rutină poate fi cauzată de efectuarea în mod repetat aceeași acțiune cu diferite seturi de date de intrare. Parametrii sunt utilizate în subrutina de intrări de text în secțiunea Declarații, numite formale. și cele care sunt utilizate atunci când este numit - real.

Descrierea și provocarea procedurilor și funcțiilor







Descrierea structurii procedurilor și funcțiilor în unele moduri similare cu cea a programului Pascal: De asemenea, au descrieri antet secțiune și o parte executabil. secțiunea Declarația conține aceleași subdiviziuni ca secțiunea a programului Descriere: Descrierea de constante, tipuri, etichete, proceduri, funcții, variabile explicative. Partea executabil conține declarații proceduri adecvate.

Descrierea procedurii de format este după cum urmează:

Descriere Formatul funcției:

parametrii formali în antetul procedurilor și funcții pot fi scrise ca:

și sunt separate prin punct și virgulă. Cuvântul cheie var poate fi absent (pe asta mai târziu). Dacă parametrii de același tip, numele lor pot fi enumerate, separate prin virgulă, indicând totalul pentru numele lor de tip. Descriind numai tipuri standard de nume, puteți utiliza parametrii sau nume de tip definite cu type.Spisok comandă parametrii formali pot fi lipsesc.

Procedura de apel efectuat de către operator, care are următorul format:

Lista de parametrii actuali - este enumerându-le separate prin virgulă. Când apelați parametrii actuali, așa cum a fost înlocuit de picioare formală în același loc în titlu. Astfel, există un transfer de parametri de intrare, atunci declarațiile parte executabilă a procedurii apoi revine la unitatea de asteptare. Parametrii de ieșire Transmiterea are loc în timpul funcționării executabil parte.

Apelul funcției în Turbo Pascal poate fi făcută în același mod cu excepția faptului că există o oportunitate de a face un apel în termen de orice expresie. În special, un nume de funcție poate fi pe partea dreaptă a operatorului de atribuire, a se vedea dacă, și astfel mediul operatorului

Pentru transmisia de la valoarea de ieșire unitate de asteptare a funcției într-o funcție executabil parte înainte de a reveni la unitatea de asteptare trebuie să pună următoarea comandă:

Atunci când apelarea procedurilor și funcțiile necesare pentru a respecta regulile de următoarele elemente:
  • numărul de parametrii actuali trebuie să corespundă cu numărul de formale;
  • parametrii reale și formale corespunzătoare trebuie să fie aceeași în ordinea secvenței și tipul.

Rețineți că numele parametrilor formale și reale se pot suprapune. Aceasta nu duce la probleme, deoarece variabilele corespunzătoare vor fi în continuare diferite datorită faptului că sunt stocate în diferite zone de memorie. În plus, toți parametrii formali sunt variabile temporare - acestea sunt create în momentul apelului subrutina și distruse în momentul ieșirii.

Luați în considerare utilizarea procedurii prin exemplul programului maxim căutător a două numere întregi.

O problemă similară, dar cu utilizarea funcțiilor poate fi rezolvată după cum urmează:

Universitatea Pedagogică de Stat Volgograd
Departamentul de Algebra, Geometrie și Informatică