of 21 /21
Implementarea algoritmilor. Limbajele C și C++. Tipuri de date Unitatea de învăţare nr. 3 IMPLEMENTAREA ALGORITMILOR. LIMBAJELE C, C++ . TIPURI DE DATE Cuprins Pagin a Obiectivele unităţii de învăţare nr. 3 2 3.1 Teoria rezolvării problemelor 2 3.2 Etapele rezolvării unei probleme cu ajutorul calculatorului (implementarea) 3 3.3 Programe în limbajul C/C++ 4 3.4 Structura unui program în C 4 3.5 Tipuri de date fundamentale 6 3.5.1 Tipuri de date caracter 6 3.5.2 Tipuri de date întreg 7 3.5.3 Tipuri de date float 8 3.4.2 Tipuri de date în dublă precizie 9 3.4.2 Nume de identificatori 11 Test de autoevaluare – unitatea de învăţare nr. 3 12 Răspunsuri şi comentarii la întrebările din testele de autoevaluare 12 Recapitulare 12 1 Programarea calculatoarelor și limbaje de programare – Curs și aplicaţii

Curs FR - Unitatea de Invatare 3

  • Author
    marius

  • View
    220

  • Download
    2

Embed Size (px)

DESCRIPTION

pclp

Text of Curs FR - Unitatea de Invatare 3

Caracteristici geometrice ale seciunilor Aspecte generale

Implementarea algoritmilor. Limbajele C i C++. Tipuri de date

Unitatea de nvare nr. 3 IMPLEMENTAREA ALGORITMILOR.

LIMBAJELE C, C++ . TIPURI DE DATECuprinsPagina

Obiectivele unitii de nvare nr. 32

3.1Teoria rezolvrii problemelor2

3.2Etapele rezolvrii unei probleme cu ajutorul calculatorului (implementarea)3

3.3Programe n limbajul C/C++4

3.4Structura unui program n C4

3.5Tipuri de date fundamentale6

3.5.1Tipuri de date caracter

6

3.5.2Tipuri de date ntreg

7

3.5.3Tipuri de date float

8

3.4.2Tipuri de date n dubl precizie

9

3.4.2Nume de identificatori

11

Test de autoevaluare unitatea de nvare nr. 312

Rspunsuri i comentarii la ntrebrile din testele de autoevaluare12

Recapitulare12

Bibliografie unitatea de nvare nr. 213

OBIECTIVELE unitii de nvare nr. 3Principalele obiective ale Unitii de nvare nr. 3 sunt:

nelegerea etapelor rezolvrii unei probleme cu ajutorul calculatorului nelegerea etapelor parcurse n implementare nsuirea tipurilor valorice de date prezente n etapa de implementare nsuirea regulilor de definire a identificatorilor

3.1. TEORIA REZOLVRII PROBLEMELOR

Creterea complexitii problemelor supuse rezolvrii automate (cu ajutorul calculatorului) a determinat ca activitatea de programare s devin, de fapt, un complex de activiti.

Pentru rezolvarea unei probleme trebuie parcurse urmtoarele etape:

Analiza problemei (nelegerea problemei i specificarea cerinelor acesteia). Se stabileste ce trebuie s fac aplicaia, i nu cum. Se stabilesc datele de intrare (identificarea mediului iniial) i se stabilesc obiectivele (identificarea mediului final, a rezultatelor);

Proiectarea (conceperea unei metode de rezolvare a problemei printr-o metod algoritmic);

Implementarea (codificarea algoritmului ales ntr-un limbaj de programare);

Testarea aplicaiei obinute (verificarea corectitudinii programului);

Exploatarea i ntreinerea (mentenana, activitatea de modificare a aplicaiei la cererea beneficiarului sau n urma unor deficiene constatate pe parcursul utilizrii aplicaiei).

n acest context, activitatea de programare a devenit o activitate organizat, definindu-se metode formale de dezvoltare a fiecrei etape. Etapele descrise anterior alctuiesc ciclul de via al unui produs software i constituie obiectul de studiu al disciplinei numite ingineria sistemulor de programe (software engineering).

3.2. ETAPELE REZOLVRII UNEI PROBLEME CU AJUTORUL CALCULATORULUI (IMPLEMENTAREA)

Dup analiza problemei i stabilirea algoritmului, acesta trebuie tradus (implementat) ntr-un limbaj de programare.

Scrierea (editarea) programului surs.

Programele surs sunt fiiere text care conin instruciuni (cu sintactica i semantica proprii limbajului utilizat). Programul (fiierul) surs este creat cu ajutorul unui editor de texte i va fi salvat pe disc (programele surs C primesc, de obicei, extensia .c, iar cele C++, extensia .cpp).

Pentru a putea fi executat, programul surs trebuie compilat i linkeditat.

Compilarea

Procesul de compilare este realizat cu ajutorul compilatorului, care translateaz codul surs n cod obiect (cod main), pentru ca programul s poat fi neles de calculator. n cazul limbajului C, n prima faz a compilrii este invocat preprocesorul. Acesta recunoate i analizeaz mai nti o serie de instruciuni speciale, numite directive procesor. Verific apoi codul surs pentru a constata dac acesta respect sintaxa i semantica limbajului. Dac exist erori, acestea sunt semnalate utilizatorului. Utilizatorul trebuie s corecteze erorile (modificnd programul surs). Abia apoi codul surs este translatat n cod de asamblare, iar n final, n cod main, binar, propriu calculatorului. Acest cod binar este numit cod obiect i de obicei este memorat ntr-un alt fiier, numit fiier obiect. Fiierul obiect va avea, de obicei, acelai nume cu fiierul surs i extensia .obj.

Linkeditarea

Dupa ce programul surs a fost translatat n program obiect, el este va fi supus operaiei de linkeditare. Scopul fazei de linkeditare este acela de a obine o form final a programului, n vederea execuiei acestuia. Linkeditorul leag modulele obiect, rezolv referinele ctre funciile externe i rutinele din biblioteci i produce cod executabil, memorat ntr-un alt fisier, numit fiier executabil (acelai nume, extensia .exe)

Execuia

Lansarea n execuie const n ncrcarea programului executabil n memorie i startarea execuiei sale.

3.3. PROGRAME N LIMBAJUL C/C++Un program scris n limbajul C (sau C++) este compus din unul sau mai multe fiiere surs. Un fiier surs este un fiier text care conine codul surs (n limbajul C) al unui program. Fiecare fiier surs conine una sau mai multe funcii i eventual, referine ctre unul sau mai multe fiiere header .Funcia principal a unui program este numit main. Execuia programului ncepe cu execuia acestei funcii, care poate apela, la rndul ei, alte funcii. Toate funciile folosite n program trebuie descrise n fiierele surs (cele scrise de ctre programator), n fiiere header (funciile predefinite, existente n limbaj), sau n biblioteci de funcii.

Un fiier header este un fiier aflat n sistem sau creat de ctre programator, care conine declaraii i definiii de funcii i variabile.

Aciunile din fiecare funcie sunt codificate prin instruciuni. Exist mai multe tipuri de instruciuni, care vor fi discutate n capitolul urmtor. O instruciune este orice expresie valid (de obicei, o asignare sau un apel de funcie), urmat de simbolul. Uneori, ca instruciune poate apare instruciunea nul (doar ;), sau instruciunea compus (privit ca o succesiune de instruciuni simple, ncadrate ntre acoladele delimitatoare {}.

De reinut:

1. Mediile de programare integrate (BORLANDC, TURBOC) nglobeaz editorul, compilatorul, linkeditorul i depanatorul (utilizat n situaiile n care apar erori la execuie);

2. Dac nu se utilizeaz un mediu integrat, programatorul va apela n mod explicit (n linie de comand) un editor de texte, compilatorul, linkeditorul. Lansarea n execuie se va face tot din linie de comand.

3.3. STRUCTURA UNUI PROGRAM N C

n caz general, structura unui program n C este urmtoarea:

declaraii globale

returneaz-afiez main (lista de parametrii)

{

secven de instruciuni

}

returneaz-afiez funcia_1 (lista de parametrii)

{

secven de instruciuni

}

returneaz-afiez funcia_2 (lista de parametrii)

{

secven de instruciuni

}

returneaz-afiez funcia_N (lista de parametrii)

{

secven de instruciuni

}

Majoritatea programelor includ apeluri la biblioteca standard, adic ncep cu una sau mai multe instruciuni #include. Instruciunea #include cere compilatorului s foloseasc coninutul unui anumit fiier. Acesta este un fiier ASCII, conine cod surs n C i are extensia h. Numele fiierului trebuie ncadrat de delimitatorii < >.

De exemplu, n programul:

#include

void main ( )

{ cout