Recapitulare Bac Informatica

March 20, 2017 | Author: Cristina Popirlan | Category: N/A
Share Embed Donate


Short Description

Download Recapitulare Bac Informatica...

Description

Recapitulare pentru bacalaureat 1. ALGORITMI....................................................................................................................................3 1.1. Noţiunea de algoritm. Caracteristici .............................................................................................3 1.2. Date, variabile, expresii, operaţii:.............................................................................................3 1.3. Structuri de bază (liniară, alternativă si repetitivă):..................................................................5 1.4. Descrierea algoritmilor (programe pseudocod):........................................................................8 2. Elementele de bază ale unui limbaj de programare (Pascal)..........................................................12 2.1 Vocabularul limbajului.............................................................................................................12 2.2 Constante. Identificatori...........................................................................................................12 2.3 Noţiunea de tip de dată. Operatori aritmetici, logici, relaţionali .............................................13 2.4 Definirea tipurilor de date .......................................................................................................13 2.5 Variabile. Declararea variabilelor ............................................................................................13 2.6 Definirea constantelor .............................................................................................................13 2.7 Structura programelor. Comentarii ..........................................................................................14 2.8 Expresii. Instrucţiunea de atribuire ..........................................................................................14 2.9 Citirea/scrierea datelor .............................................................................................................14 2.10 Structuri de control (instrucţiunea compusă, structuri alternative şi repetitive) ....................14 3.Subprograme ...................................................................................................................................15 3.1. Subprograme. Mecanisme de transfer prin intermediul parametrilor......................................15 3.2. Proceduri si functii predefinite................................................................................................17 4. Tipuri structurate de date................................................................................................................18 4.1 Tipul tablou........................................................................................................18 4.2. Tipul sir de caractere...............................................................................................................23 4.3. Tipul înregistrare (articol).......................................................................................................25 5. Fisiere text......................................................................................................................................26 5.1. Fisiere text. Tipuri de acces...............................................................................................26 5.2. Proceduri si functii predefinite pentru fisiere text ............................................................26 Sintaxa de declarare:.....................................................................................................................26 Probleme:.....................................................................................................................................27 6. Algoritmi elementari......................................................................................................................29 6.1. Probleme care operează asupra cifrelor unui număr................................................29 .......................................................................................................................................................30 6.2. Divizibilitate. Numere prime. Algoritmul lui Euclid..............................................................30 6.3. Sirul lui Fibonacci. Calculul unor sume cu termenul general dat...........................................33 6.4. Determinare minim/maxim.....................................................................................................35 6.5. Metode de ordonare (metoda bulelor, inserŃiei, selectiei, numărării) ...................................36 6.6. Interclasare..............................................................................................................................40 6.7. Metode de căutare (secventială, binară)..................................................................................41 6.8 Analiza complexităţii (considerând criteriile de eficienţă durata de executare şi spaţiu de memorie utilizat)............................................................................................................................43 1/68

7. Subprograme definite de utilizator.................................................................................................43 7.1 Proceduri şi funcţii...................................................................................................................43 7.2 Proiectarea modulară a rezolvării unei probleme.....................................................................47 8. Recursivitate...................................................................................................................................48 8.1 Prezentare generală...................................................................................................................48 8.2 Funcţii şi proceduri recursive...................................................................................................48 9. Metoda backtracking......................................................................................................................49 9.1. Prezentare generală .................................................................................................................49 9.2. Probleme de generare. Oportunitatea utilizării metodei backtracking ...................................52 10. Generarea elementelor combinatoriale.........................................................................................55 10.1 10.2

Permutari, aranjamente, combinari................................................................................55 Produsul cartezian .Submultimi. .........................................................................................61

11.Grafuri ..........................................................................................................................................62 11.1Grafuri neorientate...................................................................................................................62 11.2Grafuri orientate......................................................................................................................64 11.3Arbori......................................................................................................................................66

2/68

1. ALGORITMI

1.1. Noţiunea de algoritm. Caracteristici Prin algoritm se înţelege o mulţime ordonată şi finită de reguli ce descriu o succesiune finită de operaţii necesare rezolvării unei probleme.Paşii algoritmului trebuie să-i fie indicaţi calculatorului sub forma unor comenzi numite instrucţiuni. Mulţimea tuturor instrucţiunilor ce descriu algoritmul de rezolvare a unei probleme formează programul. Pentru a dialoga cu un calculator, este necesară cunoaşterea unui limbaj comun omului şi calculatorului. Atenţie! Care sunt deosebirile dintre un calculator de buzunar şi unul programabil? Exemple de algoritmi: -calcularea ariei unui triunghi(se cunosc a,b,c); -calcularea înălţimilor unui triunghi (se cunosc a,b,c); -calcularea mediei unui elev; -rezolvarea ecuaţiei de gradul I etc. Caracteristici ale algoritmilor: -generalitatea = proprietatea de a fi valabil pentru o clasă ( un gen) de probleme; (ex nu aduna 3+4 ci a+b) -finitudinea = proprietatea de a permite obţinerea soluţiei problemei după parcurgerea unui număr finit de operaţii (contraexemplu: ciclu infinit ex repeat write(‘*’) ;until 3=4 ;). -unicitatea= proprietatea conform căreia ori de câte ori se porneşte de la acelaşi set de valori ale variabilelor de intrare se obţin aceleaşi soluţii. Atenţie!Fiecare proprietate trebuie exemplificată prin căte un exemplu şi un contraexemplu. Atenţie! Dacă un algoritm are aceste 3 proprietăţi nu înseamnă că el este şi corect.

1.2. Date, variabile, expresii, operaţii: 1. Date : -

Numerice

-

Alfanumerice

-

Logice

2. Operatii : -

aritmetice

-

relationale (,,=) 3/68

-

logice (booleene true, false)

3. Expresii



-

Aritmetice

-

relationale

-

logice (si, sau, not)

Tabela de adevăr a operatorului si:

X

Y

X si Y

False

False

False

False

True

False

True

False

False

True

True

True

Observatie: ‚si’ are valoarea true doar daca ambii operanzi sunt true si falsa daca unul dintre ei este false. •

Tabela de adevar a operatorului sau:

X

Y

X sau Y

False

False

False

False

True

True

True

False

True

True

True

True

Observatie: ‚sau’ are valoarea false doar daca ambii operanzi sunt falsi si true daca unul dintre ei este true.



Tabela de adevar a operatorului not

X False True

not X True False

Operatorul XOR (sau exclusiv): X False

Y False

X xor Y False 4/68

False

True

True

True

False

True

True

True

False

Aplicatii : Legile lui De Morgan Not(p sau q)= not p si not q Not (p si q)= not p sau not q

1.3. Structuri de bază (liniară, alternativă si repetitivă): 1.1. Structuri liniare 1.1.1. Citirea datelor Citire Sintaxa : Citeste(v1,v2,…,vn) ; Unde v1,… vn= variabile Efect : calculatorul asteapta introducerea de la tastatura a valorii variabilelor v1,…, vn si da aceasta valoare (in memorie) variabilelor precizate

Exemplu : Citeste(a,b) =>

Memorie | Ecran a2

2

b3

3

1.1.2. Scrierea expresiilor

Sintaxa : Scrie(e1,e2,…,en); Unde e1,…,en=expresii Efect: Se evalueaza(calculeaza) valoarea expresiilor din lista si rezultatul se afiseaza pe ecran. Exemplu : Scrie(a,b); => Ecran : 23 5/68

scrie(á este ‘, a); =>Ecran: A este 2 OBS importanta: in sintaxa lui ‘citeste’in lista nu pot sa apara expresii. De ce ? … Atenţie la formatul de afişare(a:2, a:n1:n2)! 1.1.3. Atribuirea Sintaxa : V := expresie Se citeste : « v ia valoarea expresie » Efect : Se evalueaza expresia v si rezultatul ii este dat (in memorie) lui v. Exemple: A :=a+b B :=b+2*a => Memorie:…. 1.2. Structuri alternative : 1.2.1. Instructiunea IF daca c atunci X

altfel Y

unde c=conditie (expresie logica) , X,Y= cate o singura instructiune ; Efect - se evalueaza c si daca este true se executa X ; daca este false se executa Y ;

- Probleme: * Intr-o sala de clasa sunt mese si scaune. Se cunoaste numarul lor. Care dintre acestea sunt mai multe ? Cunoscand si numarul elevilor clasei si faptul ca la o masa pot sta 3 persoane afisati daca : a)

sunt destule mese ;

b)

sunt destule scaune.

* Se cunosc 5 numere
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF