Documente Academic
Documente Profesional
Documente Cultură
Introducere
Limbajul C++ este un limbaj structurat, flexibil, portabil i prietenos. Instruciunile care compun
programele de calcul sunt traduse n cod main prin intermediul unui program denumit compilator.
Programarea este activitatea de codificare a algoritmelor n calculator. Procesul de programare are 4
pai:
specificarea task-urilor;
elaborarea unui algoritm pentru a obine soluia sa;
codificarea algoritmului n limbajul C++;
testarea codului.
Un cod C++ se numete cod surs, iar un fiier care conine un cod surs se numete fiier surs.
Dup ce a fost creat un fiier surs se invoc compilatorul limbajului C++. Dac nu sunt erori, n urma
acestei operaii, se genereaz fiierul executabil asociat.
Toate programele C++ au anumite componente i trsturi comune. Acestea au urmtoarea structur:
directive preprocesare;
declaraii globale;
funcii.
Preprocesorul este apelat automat atunci cnd ncepe compilarea. Prin intermediul lui se pot realiza:
includeri de text, definiii i apeluri de macrouri simple, compilare condiionat.
Declaraiile globale permit utilizarea unor tipuri de date i variabile definite de utilizator n orice
punct din interiorul programului.
Dei un program C++ poate conine mai multe funcii, singura funcie care trebuie neaprat s existe
este funcia main. Cu aceast funcie ncepe execuia programului. Atunci cnd programul este lansat, el
execut instruciunile din funcia main, ncepnd cu prima instruciune care urmeaz dup paranteza acolad
deschis (caracterul {). Toate instruciunile se termin cu caracterul ; (punct virgul). Limbajul C++ nu
recunoate sfritul de linie ca terminator. Execuia programului se termin cnd este ntlnit paranteza
acolad nchis (caracterul }).
Unele dintre cele mai simple programe care poate fi scris n limbajul C++ sunt urmtoarele.
1.
#include <iostream.h>
main()
{
cout << "Acesta este primul meu program C++ !";
return 0;
}
Instruciunea de afiare cout permite afiarea pe ecranul calculatorului a unor constante din program i
este esenial pentru limbaj.
Diagrama sintactic a instruciunii de ieire cout<< este prezentat n Figura 1.
Pentru introducerea datelor de la tastatur limbajul C++ folosete instruciunea cin>>. Diagrama
sintactic a instruciunii de citire cin>> este prezentat n Figura 2.
2.
#include <stdio.h>
#include <conio.h>
void main ()
{
clrscr ();
printf ("Acesta este primul meu program C++");
getch ();
}
Tip de date
Caracter
ntreg
Virgul flotant
Dubl precizie
Void
Semnificaie
Dat caracter
Numr ntreg cu semn
Numr cu zecimale
Numr cu zecimale reprezentat n dubl precizie
Fr valoare
Cuvnt cheie
char
int
float
double
void
Aceste tipuri de date, cu excepia tipului void, pot fi modificate folosind modificatorii de tip:
signed;
unsigned;
long;
short.
Modificrile de tip preced definirea tipului de dat, ca n exemplul de mai jos, caz n care se declar o
dat de tip ntreg lung.
Exemplu: long int i;
n Tabelul 2 se prezint combinaii ntre tipurile de date i modificri, lungimea de reprezentare n bii
i domeniul de valori pe care le pot conine.
Tabelul 2. Caracteristicile tipurilor fundamentale i modificate n limbajul C++
Nr.
crt.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Tipul de date
Dimensiunea n bii
char
unsigned char
signed char
int
unsigned int
signed int
short int
unsigned short int
signed short int
long int
signed long int
unsigned long int
float
double
long double
8
8
8
16
16
16
16
16
16
16
16
32
32
64
80
Domeniul de valori
ntregi -127 127
ntregi 0 255
ntregi -127 127
-32767 32767
0 65535
similar cu int
similar cu int
0 65535
similar cu short int
-2147483647 2147483647
similar cu long int
0 4294967295
6 zecimale exacte
10 zecimale exacte
10 zecimale exacte
Aplicaie 2: Program care solicit utilizatorului s introduc o valoare de tip (ntreg) unsigned, o valoare
de tip long i o valoare de tip short, iar apoi s afieze aceste valori.
Indicaii:
folosind funcia printf se afieaz la consol mesajele prin care se cere utilizatorului s introduc
valorile;
folosind funcia scanf se citesc aceste valori;
pentru afiarea unei date de tip short folosind funcia printf se utilizeaz specificatorul de format %hd;
pentru afiarea unei date de tip long folosind funcia printf se utilizeaz specificatorul de format %ld;
pentru afiarea unei date de tip unsigned folosind funcia printf se utilizeaz specificatorul de format
%d.
Funcia standard printf()
Forma general a funciei standard printf este urmtoarea:
printf (format, exp1, exp2, ...);
i are ca efect afiarea valorii expresiilor exp1, exp2, ... conform unui anumit format specificat prin format.
format este un ir de caractere care conine specificatori de format; fiecare astfel de specificator ncepe cu
caracterul %. Lista de specificatori de format corespunde cu lista expresiilor.
Specificatorii de format ai funciei printf sunt prezentai n Tabelul 3.
Tabelul 3. Specificatorii de format ai funciei printf ()
Nr. crt.
1.
2.
3.
4.
6.
7.
8.
9.
10.
Cod
%c
%d
%i
%e
%f
%mf
%.nf
%g
%o
%s
%x
%p
11.
%n
12.
13.
%u
%%
5.
Semnificaie
Afieaz o dat de tip caracter
Afieaz o dat de tip ntreg fr semn
Afieaz o dat de tip ntreg cu semn
Notaie tiinific; format cu exponent
Afieaz un numr flotant
Specific lungimea cmpului
Specific precizia
Folosete pe cel mai scurt dintre %e i %f
Afieaz o dat de tip ntreg n format octal fr semn
Afieaz un ir de caractere
Afieaz o dat de tip hexazecimal fr semn
Afieaz un pointer
Argumentul asociat va fi un pointer ntreg n care este plasat numrul de caractere
scrise anterior
Afieaz o dat de tip ntreg fr semn
Afieaz caracterul % (procent)
Cod
\b
\f
\n
\r
\t
\
\
\0
\\
\v
\a
\N
\xN
Semnificaie
Caracter backspace
Caracter avans de pagin
Caracter linie nou
Carriage return (corespunde accesrii tastei ENTER)
Caracter tabulator orizontal (salt de 8 caractere)
Caracterul ghilimele
Caracterul apostrof
Caracterul nul
Caracterul backslash
Caracterul tabulator vertical
Caracterul de avertizare (sunet)
Octal constant (unde N este o constant octal)
Hexazecimal constant (unde N este o constant hexa)
Cel mai utilizat cod de tip backslash n C++ este \n. Cnd compilatorul C++ ntlnete acest cod, el l
translateaz ntr-o operaie de trecere la linie nou.
Prototipul funciei printf este coninut n fiierul stdio.h.
Aplicaie 3: Program care folosind specificatorii de format s afieze la consol: text 3 7.43 L.
Aplicaie 4: Program care folosind specificatorii de format s afieze la consol:
numere: 4.0 5.00 6.000 7.0000.
Indicaii:
se utilizeaz specificatorii de format pentru afiarea datelor de tip caracter, respectiv a datelor de tip ir
de caractere.
Funcia standard scanf ()
Funcia standard scanf este asemntoare cu funcia standard printf fiind folosit pentru intrri n loc
de ieiri.
Forma general a funciei standard scanf este urmtoarea:
scanf(const format, &v1, &v2, ...);
&v1, &v2,... este o list de adrese de variabile; format este o constant ir de caractere care precizeaz modul
de citire al valorilor variabilelor v1, v2, ... care figureaz dup el. n format se gsesc specificatori de format,
blancuri, caractere spaii ocupate.
Specificatorii de format ai funciei scanf sunt prezentai n Tabelul 5.
Tabelul 5. Specificatorii de format ai funciei scanf ()
Nr. crt.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Cod
%c
%d
%i
%e
%f
%g
%o
%s
%x
%p
11.
%n
12.
13.
%u
%[]
Semnificaie
Citete un caracter
Citete o dat de tip ntreg scris n baza 10
Citete o dat de tip ntreg scris n baza 10 cu semn
Citete un numr float
Citete un numr float
Citete un numr float
Citete un numr scris n baza 8 fr semn
Citete un ir de caractere
Citete un numr scris n baza 16 fr semn
Citete un pointer
Argumentul asociat primete o valoare ntreag egal cu numrul de caractere
deja citite
Citete un numr ntreg fr semn
Scanare pentru un set de caractere
Aplicaie 6: Program care solicit utilizatorului s introduc o valoare de tip ntreg i o valoare de tip
float, citete aceste valori i apoi le afieaz.
Aplicaie 7: Program de calcul care solicit utilizatorului s introduc raza unui cerc, iar apoi calculeaz
aria acestuia.
Indicaii:
raza raza ;
aria cercului se calculeaz folosind relaia: aria
se definete constanta folosind sintaxa: const float pi=3.141592653589793;
Aplicaie 8: Program care solicit utilizatorului s introduc 3 caractere i apoi afieaz aceste caractere.
Comentariile
Comentariile sunt notie care se scriu n codul surs, sunt iruri de caractere cuprinse ntre /* i */, n
cazul comentariilor pe mai multe linii, sau iruri de caractere scrise dup // , n cazul comentariilor scrise pe
o singur linie. Acestea nu fac parte din codul executabil.
Aplicaie 9: Program de calcul care solicit utilizatorului s introduc numrul de zile pmntene i apoi
le transform n ani pe Jupiter.
Indicaii:
un an pe Jupiter este echivalent cu 12 ani pe Terra;
se dorete utilizarea comentariilor n cadrul codului acestui program.