Sunteți pe pagina 1din 21

PROGRAMAREA IN LIMBAJELE C/C++

PROGRA MA REA IN LIMBAJELE C/C++ Note de curs Diana Stefanescu, Diana.Stefanescu@ugal.ro

Note de curs

Diana Stefanescu, Diana.Stefanescu@ugal.ro

BIBLIOGRAFIE Orice carte C/C++ Programarea in limbajele C/C++, Diana STEFANESCU, Ed. MATRIXROM, 2002, 400pg.
BIBLIOGRAFIE
Orice carte C/C++
Programarea in limbajele C/C++,
Diana STEFANESCU,
Ed. MATRIXROM, 2002, 400pg.
www.matrixrom.ro
CUPRINS
CUPRINS

1. NOTIUNI INTRODUCTIVE

2. DATE, OPERATORI SI EXPRESII

3. IMPLEMENTAREA STRUCTURILOR DE CONTROL

4. TABLOURI

5. POINTERI

6. FUNCTII

7. TIPURI DE DATE DEFINITE DE UTILIZATOR

8. FISIERE

CAPITOLUL 1

CAPITOLUL 1 NOTIUNI INTRODUCTIVE

NOTIUNI INTRODUCTIVE

CAP.1 NOTIUNI INTRODUCTIVE
CAP.1 NOTIUNI INTRODUCTIVE

1. Calculatorul, un sistem automat de prelucrare a datelor

1. Unităţile funcţionale ale unui sistem de calcul

2. Date, algoritmi şi programe

2. Algoritmi

1. Definiţii şi caracteristici

2. Reprezentarea algoritmilor

3. Limbaje de programare

3. Teoria rezolvării problemelor

4. Etapele rezolvării unei probleme cu ajutorul calculatorului

1. Calculatorul, un sistem automat de prelucrare a datelor

1. Calculatorul, un sistem automat de prelucrare a datelor NOTIUNI INTRODUCTIVE 6
1. Calculatorul, un sistem automat de prelucrare a datelor NOTIUNI INTRODUCTIVE 6

1. Calculatorul, un sistem automat de prelucrare a datelor (cont)

un sistem automat de prelucrare a datelor (cont) Calculatorul Avantajele utilizarii calculatorului

Calculatorul Avantajele utilizarii calculatorului Hardware si software Software

sistemul de operare (exploatare) sistemul de aplicatii

1. Calculatorul, un sistem automat de prelucrare a datelor (cont)

1. Calculatorul, un sistem automat de prelucrare a datelor (cont) NOTIUNI INTRODUCTIVE 8
1. Calculatorul, un sistem automat de prelucrare a datelor (cont) NOTIUNI INTRODUCTIVE 8

1.1. Unităţile funcţionale ale unui sistem de calcul

1.1. Unit ă ţ ile func ţ ionale ale unui sistem de calcul NOTIUNI INTRODUCTIVE 9
1.1. Unit ă ţ ile func ţ ionale ale unui sistem de calcul NOTIUNI INTRODUCTIVE 9
1.2. Date, algoritmi şi programe
1.2. Date, algoritmi şi programe

Datele - reprezentări simbolice (numere, cuvinte, texte, imagini, sunete) care vor fi transformate în format intern, binar (şiruri de biţi), înregistrate în memoria calculatorului şi supuse unor prelucrări. Date + semnificaţie = informaţie Algoritmul - concept fundamental al informaticii. Program = Date + Algoritm

Calculator abstract. Masina “von Neumann”

Calculator abstract. Masina “von Neumann” NOTIUNI INTRODUCTIVE 11
2. Algoritmi
2. Algoritmi

Algoritmul este un set ordonat de paşi executabili, descrişi fără echivoc, care definesc un proces finit. Proprietati fundamentale:

Caracterul finit Caracterul unic şi universal Caracter realizabil Caracterul discret Caracterul determinist

Reprezentare:

scheme logice pseudocod

2.2. Reprezentarea algoritmilor
2.2. Reprezentarea algoritmilor
2.2. Reprezentarea algoritmilor NOTIUNI INTRODUCTIVE 13
2.2. Reprezentarea algoritmilor NOTIUNI INTRODUCTIVE 13
2.2. Reprezentarea algoritmilor NOTIUNI INTRODUCTIVE 13
2.2. Reprezentarea algoritmilor NOTIUNI INTRODUCTIVE 13
Reprezentarea algoritmilor (cont)
Reprezentarea algoritmilor (cont)
Reprezentarea algoritmilor (cont) DACA conditie ATUNCI actiune1 ALTFEL actiune2 NOTIUNI INTRODUCTIVE 14

DACA conditie ATUNCI actiune1 ALTFEL actiune2

Reprezentarea algoritmilor (cont)
Reprezentarea algoritmilor (cont)
Reprezentarea algoritmilor (cont) CAT TIMP conditie REPETA actiune1 NOTIUNI INTRODUCTIVE 15

CAT TIMP conditie REPETA actiune1

Reprezentarea algoritmilor (cont)
Reprezentarea algoritmilor (cont)
Reprezentarea algoritmilor (cont)
Reprezentarea algoritmilor (cont)
Reprezentarea algoritmilor (cont) REPETA actiune1 CAT TIMP conditie REPETA actiune1 PÂN Ă CÂND conditie NOTIUNI

REPETA actiune1 CAT TIMP conditie

REPETA actiune1 PÂNĂ CÂND conditie

3. Limbaje de programare
3. Limbaje de programare

Limbaje de programare - limbaje artificiale, care permit o descriere - riguros formalizată - a datelor şi a algoritmului, într-un program, care să fie înţeles de către calculator. Clasificare:

Limbaje de generatia I (limbaje masina, cod masina) Limbaje de generatia a II-a (limbaje asamblare) Limbaje de generatia a III-a (de nivel inalt)

3. Teoria rezolvarii problemelor cu ajutorul calculatorului

3. Teoria rezolvarii problemelor cu ajutorul calculatorului Etape: Analiza problemei Proiectarea Implementarea

Etape:

Analiza problemei Proiectarea Implementarea Testarea Exploatarea şi întreţinerea (mentenanţa)

Abordari de rezolvare:

Rezolvarea orientată pe algoritm Rezolvarea orientată pe date Rezolvarea orientată obiect

Teoria rezolvarii problemelor cu ajutorul calculatorului (cont)

rezolvarii problemelor cu ajutorul calculatorului (cont) Metode de proiectare orientate pe algoritm: metoda de

Metode de proiectare orientate pe algoritm:

metoda de proiectare top-down (descompunerea functionala a problemei P)

metoda programării structurate metoda rafinării succesive

functionala a problemei P) metoda program ă rii structurate metoda rafin ă rii succesive NOTIUNI INTRODUCTIVE

4. Etapele rezolvarii problemelor (faza de implementare)

4. Etapele rezolvarii problemelor (faza de implementare) Srierea (editarea) programului surs ă Compilarea

Srierea (editarea) programului sursă Compilarea Linkeditarea (editarea de legături) Execuţia

programului surs ă Compilarea Linkeditarea (editarea de leg ă turi) Execu ţ ia NOTIUNI INTRODUCTIVE 21