Documente Academic
Documente Profesional
Documente Cultură
3.
Programe de aplicatie
-asimileaza produsele realizate pescara industriala, in serie mica, cu produsele unicat
-sunt realizate de companii si la cererea viitorului utilizator
Sistemul de operare
-gestiunea echitabila si eficienta a resurselor din cadrul sistemului de calcul
-realizarea interfetei cu utilizatorul
-furnizarea suportului pentru dezvoltarea si executia aplicatiilor
4.
Prin definitie un algoritm este o multime ordonta si finita pe pasi care prin
executare dau un anumit rezultat la o anumita problema. Deci indiferent ce
facem: adunam 2 numere ...etc mereu vom respecta sau construi un anumit
algoritm.
5.
Caracterul finit: orice algoritm bine proiectat se termina ntr-un numar finit de pasi;
Claritatea : algoritmul trebuie descris clar, fara ambiguitati
Generalitatea: orice algoritm trebuie sa rezolve toate problemele dintr-o clasa de probleme;
Completitudinea-presupune tratarea cazurilor speciale (a exceptiilor) unei probleme.
Realizabilitatea: orice algoritm trebuie sa poata fi codificat ntr-un limbaj de programare;
Eficienta- se refera la timpul de executie (in care sunt folosite resursele calculatorului: memorie, procesor) si la spatiul de
memorie utilizat. Un algoritm este cu atat mai eficient cu cat spatiul de memorie utilizat este mai mic
si numarul de operatii mai putine.
Nerespectarea acestor caracteristici generale conduce la obtinerea de algoritmi neperformanti, posibil infiniti sau nerealizabili.
Observatia1. Nu orice problema admite un algoritm de rezolvare.
Observatia2. Doi agoritmi sunt echivalenti cand pentru aceleasi date de intrare se obtin aceleasi date de iesire.
6.
Insa principala diferenta intre variabile si constante (dupa cum o zice si numele)
este reprezentata de faptul ca variabilele isi pot schimba valoarea in timpul
programului, in timp ce constantele nu. Iar pentru a ajuta compilatorul sa faca
diferenta intre variabile si constante, la constante se pune si cuvantul const in
fata. De exemplu: const int x = 4;
In cazul asta, daca incercam sa schimbam valoarea lui x, compilatorul o sa faca
urat Avantajul constantelor este ca lucrul cu ele dureaza mult mai putin, dar
acestea nu se pot citi sau modifica
8.
Alfabetul
Alfabetul folosit in limbajul C/C++este format din:
litere mici: a-z
cifre: 0-9
Cu caracterele din alfabetul de mai sus se pot construi cuvinte. In programare aceste cuvinte se numesc
identificatori. Identificatorii sunt de doua tipuri:
identificatori proprii limbajului (cuvinte rezervate, din care sunt formate instructiunile): for, while, if, do,
identificatori ai programatorului: trebuie sa fie formati din litere, cifre si semnul _ ; regula este ca primul
caracter sa fie obligatoriu litera.
Identificatorii programatorului pot avea rolul:
nume de constante (simboluri a caror valoare nu se modifica pe parcursul executiei programului)
nume de variabile (simboluri a caror valoare se modifica pe parcursul executiei programului)
nume de tipuri create de utilizator (de ex: vector, matrice, punct la structuri)
10.
Variabilele sunt nume simbolice utilizate pentru memorarea valorilor introduse pentru datele de intrare sau a rezultatelor.
O variabila este un identificator, purtator a unei singure valori. O variabila se caracterizeaza prin:
nume
tip de data (ceea ce determina spatiul de memorie alocat variabilei si in consecinta, domeniul de
valori care se pot memora in variabila respectiva)
locatie de memorie
Exista si aici cateva reguli:
in principiu, la inceputul programului trebuie sa declarati ce variabile folositi si tipul fiecareia din ele
nu puteti folosi o variabila nedeclarata sau care inca nu a primit valoare (neinitializata);
o exceptie de la regula o reprezinta cazul valorilor intregi care se initializeaza automat cu zero (ordonat ar fi sa
cititi sau sa initializati voi fiecare variabila)
limbajul C/C++ face distinctie intre litere mari si mici
11.
Constantele sunt forme externe de reprezentare numeric, caracter si sir de caractere.
12.
-int
-char
-double
-long
Ce sunt variabilele ?
O variabila este o locatie de memorie. Ea este caracterizata prin numele sau si prin valoarea atribuita. Oricarei variabile ii corespunde un tip de date, acestea fiind
prezentate aici.
Ne vom ocupa mai mult de studiul variabilelor, decat de tipurile acestora. Ca punct de pornire avem declararea:
1.tip nume_variabila ;
Unde tip este tipul variabilei, iar nume_variabila este numele pe care dorim sa-l atribuim variabilei. Exemplu:
1.int n;
Astfel am declarat o variabila care se numeste n si este de tip integer.
Atat in limbajul de programare C++ , cat si in C, declararea unei variabile se termina cu ; .
locale
globale
Variabilele locale: sunt cunoscute si pot fi accesate numai de functia in interiorul caruia au fost declarate. Variabilele locale dintr-o functie nu au nicio legatura cu
variabilele locale din alta functie, ele sunt create numai cand respectiva functie este apelata. Variabilele locale nu-si mentin valorile intre 2 apelari ale aceleiasi functii.
Variabilele globale: sunt declarate in exteriorul oricarei functii. Spre deosebire de variabilele locale, ele sunt initializate automat cu valoarea 0. Sunt recunoscute de
orice functie si pot si utilizate ca-atare. Ele exista pe tot timpul executie programului.
Exemple:
Declaratie variabile locale:
1.int functie1( int n)
2.{
3.int a,b,c;
4....
5.}
Declaratie variabile globale :
01.void functie1 (void)
02.{
03.....
04.}
05.
06.int n,i,j;
07.
08.int main()
09.{
10.........
11.return 0;
12.}
Atribuirea valorilor
Atribuirea valorilor unor variabile se poate face direct la declarare, sau in interiorul unei functii.
Direct la declarare:
1.int main()
2.{
3.int a=0,b=8,c=4; //a este 0, b este 8, c este 4
4......
5.return 0;
6.}
Sau in interiorul unei functii:
1.int main()
2.{
3.int n,i;
4.n=9;
5.i=1;
6....
7.return 0;
8.}
Numai cele mai banale programe nu utilizeaza variabile, asa ca este bine sa invatati cum se folosesc acestea. Cateva sfaturi:
Nu faceti confuzia intre semnele = si == . = inseamna ia valoarea , iar == inseamna egal. Sunt operatori diferiti !
Ce sunt constantele ?
Constantele sunt valori fixe pe care le utilizam in program. Ca si variabilele, constantele sunt de diferite feluri.
De exemplu, pentru a specifica o constanta de tip char, trebuie sa-i punem valoare intre . Daca vrem ca A sa fie atribuita constantei char ch facem astfel:
ch=A.
Constantele in virgula mobila trebuie sa includa punctul zecimal. Daca o constanta float nu are cifre in dreapta punctului zecimal, trebuie pus 0.
13. Asocierea unei variabile a calificatorului const nu va permite modificarea ulterioara a valorii
acesteia.
14.Variabilele se declara la inceputul functiilor( variabile locale) sau in exteriorul tuturor functiilor( variabile globale),
precizanduse clasa de alocare, tipul, numele ei si valorile initiale.
15.
16. Short,long,signed,unsigned.
17. Parantezele unghiulare <> indica faptul ca este vorba de un fisier header predefinit
http://ro.wikipedia.org/wiki/C_(limbaj_de_programare)
Prima linie a programului reprezint o directiv preprocesor, #include. Aceasta face ca preprocesorul primul utilitar ce
examineaz codul surs cnd acesta este compilat s substituiasc linia respectiv cu con inutul unui fiier sau al entit ii la
care se face referire. n acest caz, fiierul header ("antet") stdio.h care conine definiiile funciilor de manipulare a intrrii i
ieirii standard va nlocui acea linie. Parantezele unghiulare ce cuprind stdio.h indic prezena acelui fiier n una din
locaiile date preprocesorului prin calea de cutare (englez search path) a fiierelor header (aceste fiiere se afl n
directorul "include" al platformei, respectiv compilatorului folosit).
18.
35.2e-1 constanta reala in format stiintific
3.52 constanta numerica ce contine punctual zecimal este de tip double
\t constanta sir
\t constanta caracter
19.
Constanta 6.44 este de tip double
20.
== nu modifica valoarea niciunuia dintre operanzii sai ,pe cand = modifica valoarea operandului
stang.
21.
Caracterul escape furnizeaza un mecanism general si extensibil pentru reprezentarea caracterelor
invizibile sau greu de obtiunut.
22.
Constantele intregi sunt literali numerici (compusi din cifre),fara punct zecimal.
a. Constante intregi in baza 10, 8 sau 16:
-constante intregi in baza 10: 45, -78
-constante intregi octale: 056, 077
-constante intregi hexazecimale: 0x45; 0x3A; oxbc
b. Constante intregi de tipuri derivate
-daca secventa de cifre este urmata de L sau l, tipul constantei este long int: 145677L
-daca secventa de cifre este urmata de U sau u, tipul constantei este unsigned int:65555u
-daca secventa de cifre este urmata de U(u) si L(l), tipul constantei este unsigned long int: 7899UL
23.
Constantele caracter sunt incadrate intre apostroafe si are ca valoare codul ASCII al caracterului pe
care il reprezinta.
a. Constante caracter corespunzatoare caracterelor imprimabile: A=65; a=97; 0=48
b. Constante caracter corespunzatoare caracterelor neimprimabile.
24.
Char,short in
25.
Constantele ir de caractere sunt constituite dintr-o succesiune de caractere ncadrat ntre ghilimele.
Caracterele dintr-un ir de caractere pot fi specificate i prin secvene escape (secvene escape speciale, cum ar fi '\n' sau secvene escape care
utilizeaz codul caracterelor, exprimat n baza 8 sau n baza 16).
Caracterele ' (apostrof), " (ghilimele) i \ (backslash) - care au o semnificaie special n acest context - pot fi specificate numai prin secvene
escape.
26.
-daca o constanta numerica contine punctul zecimal, ea este de tipul double: 3.1459
-daca numarul este urmat de F sau f, constanta este de tip float: 0.45f
-daca numarul este urmat de L sau l, este de tip long double: 9.788L
-constante reale in format stiitific: 1.5e-2
27.
Operatorul Conditional ?:
28.
Este utilizat in constructii de forma: expresie1, expresie2.
Operatorul virgula forteaza evaluarea unei expresii de la stanga la dreapta. Tipul si valoarea intregii
expresii este data de tipul si valoarea expresiei2. Operatorul virgula este folosit in instructiunea for.
Operatorul virgula are cea mai mica prioritate.
LITERALUL = Orice valoare constanta dintr-un program
29.
Este un operator unar, care are ca rezultat numarul de octeti memorati de o data de un anumit tip.
Operandul este un tip sau o data (constanta sau variabila) de un anumit tip.
30. (vezi caiet operatorii si expresii)
+=,-=,*=,/=,%=
31.
Operatorul de referire poate fi utilizat pentru referi variabile sau metode dintr-un
fisier diferit in care este definit un spatiu de nume. Pentru un cod clar,coerent si
lizibil este recomandabil sa se defineasca corespunzator fiecarui fisier un spatiu de
nume.
32.
Operator
==
!=
<
<=
>
>=
Semnificatie
Egal cu
Diferit de
Mai mic decat
Mai mic sau egal
Mai mare decat
Mai mare sau egal
33.
Sirurile de caractere sunt vectori de caractere,care au ca ultim element un terminator de sir(caract null \n).
34.
Tablourile sunt o colectie de date, de acelasi tip, situate intr-o zona de memorie continua.
35.
Deoarece grupeaza mai multe elemente.
36.
Elementele unui tablou se refera la numele tabloului si numere intregi care reprezinta pozitia elementului in cadrul tabloului.
37.
Tip tablou dat de elementele sale:
-nume tablou
-numere intregi(indici)
38.
Domeniul de vizibilitate al unei variabile reprezinta portiunea de cod in care o variabila este accesibila.
39.
Prototipul reprezinta declaratiile de functii si sunt constituite din antetul functiei, din care pot lipsi parametric formali.
40.
Timpul de viata al unei variabile reprezinta durata de executie a blocului sau a functiei in care aceasta este definita.
41.
Intr-un program in limbajul C++, declaratiile de variabile pot apare in orice loc in programul sursa.
42.
Antetul reprezinta prima linie a functiei in care se indica: tipul functiei, numele acesteia si lista declaratiilor parametrilor formali.
43.
Trebuie sa fie declarata si apoi definite pentru a putea fi utilizata.
44.
Antet si corp.
45. 46.???
Nu este admisa definirea unei functii in corpul altei functii ,definirea unei functii se poate faceoriunde in cadrul codului sursa.
47.
Variabile locale.modificarea lor in timpul executiei functiei se pierd la sfarsitul apelului
48.
Asemanari intre transferul parametrilor unei functii prin pointeri si prin referinta.
Transferul unei funcii prin pointeri -sunt parametrii formali catre tipuri de date
Transferul unei functii prin referinta -sunt parametrii formali catre tipuri de date
49.
Parametrii formali apar in declaratia functiei si au rolul de a descrie operatiile ce trebuie efectuate.
50.
-instructiunea while
-instructiunea for
51.
-instructiunea do-while
-instructiunea repeat
52.
In cazul in care la prima evaluare a expresiei,aceasta are valoarea 0,corpul instructiunii while nu va fi executat niciodata.Spre deosebire de
instructiunea while,in cazul instructiunii do-while,corpul ciclului se executa cel putin o data.
53.
Este obligatorie prezenta instructiunii vide,prezinta atat instructiune cat si expresie.