Subprograme

Proiect
8/10 (1 vot)
Conține 1 fișier: doc
Pagini : 27 în total
Cuvinte : 5825
Mărime: 34.39KB (arhivat)
Publicat de: Georgel Vieru
Puncte necesare: 6

Extras din proiect

Capitolul 1

1.1 Introducere

Inauntrul oricariu program care dureaza exista un

program concentrat care incearca sa iasa de acolo.

Legea programelor mari(a lui Hoare)

Ca programatori ne gasim de mai multe ori in situatia de a efectua o secventa de instructiuni de mai multe ori (de exemplu un calcul) pentru

date diferite sau pentru aceleasi date.In aceste situatii este de dorit ca respectiva secventa de instructiuni sa fie scrisa separat sub forma unui subprogram care va fi indentificat prin nume.

Un subprogram este format din doua parti din care una este declarativa,

iar cealalta executabila.Partea declarativa este indentica cu partea declarativa a unui program,aceasta continand declaratii de variabilitate,constante,tipuri de date etc.

Partea executabila este formata dintr-o secventa de instructiuni asemanatoare secventei “begin – end.” cu singura diferenta ca un subprogram se termina intotdeauna cu “;” .

Instructiunile programului principal se succed in ordine de sus in jos.In momentul unui apel de subprogram se vor executa instructiunile acestuia,iar,dupa terminarea subprogramului,se va reveni la executia instructiunilor din programul principal.

Un subprogram poate apela la randul sau un alt subprogram,sau se poate apela pe sine(procedeu ce se numeste recursivitate).

Cazuri in care este utila folosirea de subprograme:

1. Este eficient sa folosim subprograme daca avem de efectuat aceeasi operatie de mai multe ori.Vom scrie astfel o portiune de programe pe care o vom apela de cate ori avem nevoie.In consecinta vom tasta mai putin.programul fiind mult mai usor de urmarit si corectat;in plus,se obtine o reducere a lungimii programului si a dimensiunii memoriei ocupate.

2. In cazul in care un program rezolva o problema complicata este util sa folosim subprograme pentru “a sparge” respective problema in mai multe probleme mai simple si mai usor de rezolvat.Astfel.in programele lungi este inevitabila folosirea subprogramelor,acestea putand fi realizate independent,ceea ce conduce la cresterea fiabilitatii programelor.

Mai multe subprograme ce rezolva probleme din acelasi domeniu (ex. functii grafice,matematice) pot fi grupate in unitati.Ele vor putea fi utilizate cu usurinta fara a fi necesara rescrierea lor pentru fiecare program.

Limbajul Pascal pune la dispozitie doua tipuri de subprograme:proceduri si functii.Procedurile calculeaza si furnizeaza nici unul,unul sau mai multe rezultate,iar functiile calculeaza o singura valoare pe care o returneaza la sfarsitul executiei.

1.2 Proceduri fara parametri

Cele mai simple subprograme sunt procedurile fara parametri.

Sa consideram urmatorul exemplu in care se doreste calcularea ariei a doua triunghiuri ale caror laturi sunt cunoscute:

program ProceduraFaraParametri;

var a ,b ,c ,p ,arie: real;

procedure CalculArie;

begin

p:=(a+b+c)/2;

arie:=sqrt(p*(p-a)*(p-b)*(p-c));

writeln(‘Aria este:’,arie:5:2);

end;

begin

Writeln(‘Introduceti laturile primului triunghi:’)

Readln(a ,b, c);

CalculArie;

Writeln(‘Introduceti laturile celui de-al doilea triunghi:’);

Readln(a ,b, c);

CalculArie;

end.

Programul incepe cu declaratiile variabilelor ce urmeaza a fi folosite.Definirea subprogramului care calculeaza aria incepe cu cuvantul cheie procedure urmat de numele sau de identificare CalculArie.Mai departe se poate vedea corpul subprogramului,reprezentat de o instructiune compusa(este formata dintr-o secventa de instructiuni inchise intr-o structura de tipul begin-end) care calculeaza semiperimetrul,apoi aria,si o afiseaza pe aceasta din urma.

In programul principal dupa citirea variabilelor a, b si c de la consola,observam instructiunea CalculArie.Aceasta instructiune se numeste instructiune procedura si are ca efect apelul subprogramului cu acelasi nume.Deci prin aceasta instructiune se va executa instructiunea compusa ce formeaza corpul procedurii CalculArie.

Trebuie remarcat ca in cazul in care nu se folosesc subprograme,blocul de instructiuni pentru calculul si afisarea ariei ar fi trebuit scris de doua ori(cate o data pentru fiecare triunghi).

Executia instructiunii procedurare pentru o procedura fara parametrii decurge astfel:

1. se retine,la o locatie speciala din memorie,adresa de revenire din procedura;

2. se executa subprogramul;

3. se revine in programul apelant,executia continuand de la adresa salvata in prealabil.

Preview document

Subprograme - Pagina 1
Subprograme - Pagina 2
Subprograme - Pagina 3
Subprograme - Pagina 4
Subprograme - Pagina 5
Subprograme - Pagina 6
Subprograme - Pagina 7
Subprograme - Pagina 8
Subprograme - Pagina 9
Subprograme - Pagina 10
Subprograme - Pagina 11
Subprograme - Pagina 12
Subprograme - Pagina 13
Subprograme - Pagina 14
Subprograme - Pagina 15
Subprograme - Pagina 16
Subprograme - Pagina 17
Subprograme - Pagina 18
Subprograme - Pagina 19
Subprograme - Pagina 20
Subprograme - Pagina 21
Subprograme - Pagina 22
Subprograme - Pagina 23
Subprograme - Pagina 24
Subprograme - Pagina 25
Subprograme - Pagina 26
Subprograme - Pagina 27

Conținut arhivă zip

  • Subprograme.doc

Te-ar putea interesa și

Programe naționale de cercetare dezvoltare și inovare

1.Descrierea programului 1.1.Obiective; subprograme Obiectivul general al Programului MENER este creşterea competitivităţii economiei şi...

Limbajul VHDL

1.Limbajul VHDL Limbajul VHDL este unul dintre limbajele standard folosite pentru a descrie sistemele numerice.VHDL – Very Hight Speed Integrated...

Contabilitatea Programelor Naționale de Sănătate

INTRODUCERE Aderarea României în structurile europene presupune focalizarea eforturilor pentru urmărirea alinierii legislaţiei naţionale la...

Motorul Otto

INTRODUCERE Prezenta lucrare tratează rezolvarea unor programe de loc geometric cu ajutorul animaţiei în Borland Pascal. Lucrarea de faţă este...

Program pentru Evidența unei Firme de Televiziune prin Cablu

CAPITOLUL 1 DESCRIEREA PROGRAMULUI Programul, scris în FOX PRO, este folosit pentru evidenţa unei firme de televiziune prin cablu. Odată apelat...

Funcții recursive - Turbo Pascal

CUVÂNT ÎNAINTE Acest proiect la informatica consta în prezentarea în limbajul de programare Turbo Pascal a unei probleme ce îsi propune sa...

Aplicație grafică - conquest

I. 1. Descrierea Programului Programul reprezinta o aplicatie a unit-ului graph, un joc simplu de strategie (gen TBS, daca ar fi sa-l incadram in...

Algoritmi în Programare

I.PREZENTAREA TEMEI Aplicaţia realizată este folosită pentru gestiunea stocurilor de medicamente dintr-- farmacie. Prelucrările aplicaţiei...

Ai nevoie de altceva?