Continuturi


 * Programa examenului de Bacalaureat la Informatică **

01. Algoritmi pseudocod [[file:Algoritmi - notiuni introductive.ppt]]
1.1 Notiunea de algoritm, caracteristici 1.2 Date, variabile, expresii, operatii 1.3 Structuri de baza (liniara, alternativa si repetitiva) 1.4 Descrierea algoritmilor (programe pseudocod)

ALGORITMI

 * 1. Variabile, operatori şi expresii [[file:01 Variabile.pdf]]**
 * 2. Algoritmi: proprietăţi, etapele rezolvării unei probleme [[file:02 Algoritmi.pdf]]**
 * 3. Descrierea algoritmilor prin schema logică şi pseudocod [[file:03 Scheme logice Pseudocod.pdf]]**
 * 4. Structura liniară [[file:04 Structura liniara.pdf]]**
 * 5. Structura alternative [[file:05 Structura alternativa.pdf]]**
 * 6. Structura repetitive [[file:06 Structura repetitiva.pdf]]**

Structuri de control Structuri de control C++:

=Limbajul C++:= ==

02. Elementele de bază ale unui limbaj de programare
2.1 Vocabularul limbajului 2.2 Constante. Identificatori 2.3 Notiunea de tip de data. Operatori aritmetici, logici, relationali 2.4 Definirea tipurilor de date 2.5 Variabile. Declararea variabilelor 2.6 Definirea constantelor 2.7 Structura programelor. Comentarii 2.8 Expresii. Instructiunea de atribuire 2.9 Citirea/scrierea datelor 2.10 Structuri de control (instructiunea compusa, structuri alternative si repetitive)

03. Subprograme predefinite
3.1 Subprograme. Mecanisme de transfer prin intermediul parametrilor 3.2 Proceduri si functii predefinite

04. Tipuri structurate de date
4.1 Tipul tablou 4.2 Tipul sir de caractere - operatori, proceduri si functii predefinite pentru: citire, afisare, concatenare, cautare, extragere, inserare, eliminare si conversii (sir <=> valoare numerica)

Functii pentru siruri de caractere: [[file:sir caractere.pdf]]
Căutarea unui subsir intr-un sir

Probleme din variantele de BAC: [[file:fisa_bac_sir_caractere.pdf]]
4.3 Tipul inregistrare

05. Fişiere TEXT [[file:fisiere.ppt]]
5.1 Fisiere text. Tipuri de acces 5.2 Proceduri si functii predefinite pentru fisiere text
 * Aplicatii cu fisiere - variante BAC 2009:** [[file:fisiere_cpp_bac_2009.pdf]]

06. Algoritmi elementari
6.1 Probleme care opereaza asupra cifrelor unui numar 6.2 Divizibilitate. Numere prime. Algoritmul lui Euclid 6.3 Sirul lui Fibonacci. Calculul unor sume cu termenul general 6.4 Determinare minim/maxim 6.5 Metode de ordonare (metoda bulelor, insertiei, selectiei, numararii) 6.6 Interclasare 6.7 Metode de cautare (secventiala, binara) 6.8 Analiza complexitate unui algoritm (considerand criteriile de eficienta //durata de executare// si //spatiu de memorie utilizat//)

07. Subprograme definite de utilizator
7.1 Proceduri si functii - declarare si apel - parametri formali si parametri efectivi - parametri transmisi prin valoare, parametri transmisi prin referinta - variabile globale si variabile locale, domeniu de vizibilitate 7.2 Proiectarea modulara a rezolvarii unei probleme

08. Recursivitate [[file:Subprograme recursive 10.ppt]][[file:Recursivitate si subprograme.ppt]]
8.1 Prezentare generala 8.2 Proceduri si functii recursive

09. Metoda backtracking
9.1 Prezentare generala 9.2 Probleme de generare. Oportunitatea utilizarii metodei backtracking

10. Generarea elementelor combinatoriale
10.1 Permutari, aranjamente, combinari 10.2 Produs cartezian, submultimi =11. Grafuri=

**11.1 Grafuri neorientate**
- terminologie (nod/varf, muchie, adiacenta, incidenta, grad, lant, lant elementar, ciclu, ciclu elementar, lungime, subgraf, graf partial - proprietati (conex, componenta conexa, graf complet, hamiltonian, eulerian) - metode de reprezentare (matrice de adiacenta, liste de adiacenta)

**11.2 Grafuri orientate**
- terminologie (nod/varf, arc, adiacenta, incidenta, grad intern si extern, drum, drum elementar, circuit, circuit elementar, lungime, subgraf, graf partial) - proprietati (tare conexitate, componenta tare conexa) - metode de reprezentare (matrice de adiacenta, liste de adiacenta)

**11.3 Arbori**
- terminologie (nod, muchie, radacina, descendent, descendent direct/fiu, ascendent, ascendent direct/parinte, frati, nod terminal, frunza) - metode de reprezentare in memorie ( matrice de adiacenta, lista "de descendenti", vectori "de tati")