Professional Documents
Culture Documents
!
"
#
$ %&' ( )%%*
+
+ +
%&%&,& -
.
/
! 0
" #
$
!
! %
&
! '
!
!
!
(
!
)
)
*
)
%
'
!
)
#
"
)
)
*
)
)
*
+
, #
)
,
-
.
//
)
01 )
)+
-2-
Programarea calculatoarelor în limbajul C++
1!2
1
%&& '
%&( )
%&* )
%&+
%&, -
%&. /
012
%&3 $
HS
&& 1-
&( )
4 !55
FF
(& '
(( 67
(*
(+
(, '
8-
(. 7
(3 9
!
"
FS
*& !
*( "
** " :;
*+ ; 0
2
*, 0 2
# $
0I
+& )
+(
-< ;
+* =
++ > =
+, >
=
+. >
+3 ?
+@
+A
% &
1F
,& ' ; 7
,( B -- 67
,*
; -
' (
) 1O
-3-
Programarea calculatoarelor în limbajul C++
.&
0C2
.( )
.* #
.+ )
. $
/ NC
@& 7
>
!55 +,
-4-
Programarea calculatoarelor în limbajul C++
%&,& 3
/
4
5
%&,&,& +
* +
5
+
-
%
'
)
-
+
+
2
)
3
%' )
(
+
3
% ' #
&
!
!
%
)'
)
-5-
Programarea calculatoarelor în limbajul C++
,
4
*
4
&
5
+
.
)
%
' 7
8
%
'
!
%1'
%$
' +
%!
=
'6
%6
'
#
6
8
% C
'
%
'6
8
)
)6
8 ) %6
$' )
% C' % &
'
-6-
Programarea calculatoarelor în limbajul C++
.
#)
&
%&,&'&
*
5
!
# +
% " '
5
3
+
)
%
?C'
-
- 5
#
9
5
)
)
: ;
*3
)
%& '
)
+
)
"
)
-7-
Programarea calculatoarelor în limbajul C++
(&
7
8 %
'
8 # %=?C'
8 %
'
%=
'
4 )
)
% #' " &
)
)
2
%'
4 )
2
# %=?C'
# &
#
<
)
) #
#
#
)
"
)
-8-
Programarea calculatoarelor în limbajul C++
%)'
)
# )
)
)
-
%)
'
)
-9-
Programarea calculatoarelor în limbajul C++
" % ? '
%&,&6&
=
"
>"
9=, %
'
4
%'
)
+
*
4
- !
+7
3
% &
+)
'
)
+
-10-
Programarea calculatoarelor în limbajul C++
# >"
%
'
)
#
?
?
# % &
0'
2
7
-11-
Programarea calculatoarelor în limbajul C++
%&,&7& 8
)
)
) )
% &
)'
(& )7
8
%' "
)
%
'
" &
3
*:
"
) 6
8 )
%!' "
" #
6
8 B
"
6
@
! 6
8
%1
C' "
6
8 %E7' "
6
)
+
"
)
" !
-12-
Programarea calculatoarelor în limbajul C++
)
)
)
(
)
"
8 91)),
:
*
)
%
'
)
"
"
-
7
8
>
=6
8
6
3
"
"
92
:
9
3 &
*
-
&
-13-
Programarea calculatoarelor în limbajul C++
*
+ F7 3
+
F7
=
(& 7
-14-
Programarea calculatoarelor în limbajul C++
$
3
. )
)
)
*
)
+
)
)
%# 4
'
-15-
Programarea calculatoarelor în limbajul C++
%&,&;& 2
93
:
5 1 #
%
'
)
)
%&,&*& <
4
*
%'
"
%
"
'
*
" "
!
&
-
"
#
*
$
5
)
#
6
-16-
Programarea calculatoarelor în limbajul C++
(
#
"
*
)
4
#
54
# ! =
-17-
Programarea calculatoarelor în limbajul C++
*
)
! =
-18-
Programarea calculatoarelor în limbajul C++
,& !
,&,& 3
8
, !
.!
5
&
!
&
!
&
# #
A
8
%-
(-
'
* #
&
!
)
4
= ! )
! - !
)
&
)
)
%
&
' - &
)
-
#include <iostream.h>
using namespace std;
int main ()
{
cout << "Bun venit in lumea C++!";
return 0;
-19-
Programarea calculatoarelor în limbajul C++
=
&
! %?. )
//B?' 5
#
#include <iostream.h>
,
=
)
&
-
) 3
4) 5
//
4
)
$
//
%'
&
)
)
//
int main ()
-20-
Programarea calculatoarelor în limbajul C++
return 0;
+
&
% &
C' 9
C
&
+
// -
3 & >
!55
+
5
#
& 5
%
00'
)
%
='6
+
%
' #
)
& *
// &
7
int main () { cout << "Bun venit in lumea C++!"; return
0; }
$
)
% ' - //
.
#
5
-21-
Programarea calculatoarelor în limbajul C++
)&,& +
- ! )
2
" 8
(&7
int i,j;
float a,b;
)
* #
! //
7
8 "
)
7
//declararea variabilelor
float a,b;
//afisarea unui mesaj pentru introducerea unui numar:
cout << "Introduceti un numar real: ";
//instructiunea pentru citirea numarului scris la
tastatura:
cin >> a;
2
7
a = a+b;
//adunare - rezultatul este stocat în variabila a
a += b;
//adunare - acelasi efect ca în instructiunea de mai
-22-
Programarea calculatoarelor în limbajul C++
sus
b = b-a;
//scadere - rezultatul este stocat în variabila b
b -= a;
//scadere - acelasi efect ca în instructiunea de mai
sus
c = a*b;
//înmultire
c = a/b;
//împartire
*
7
"
6 #
(& 7
a = a+b/(b+1);
//efectul executiei instructiunii de mai sus este
similar cu secventa:
c = b+1;
b = b/c;
a = a+b;
2
% & ( )
(' 3
)
4
)&'& !
4
9
) )
%D' <
-
)
5
%D' )
2
)# + ! //
)
+
) %
' 7
asm, auto, bool, break, case, catch, char, class,
const, const_cast, continue, default, delete, do,
double, dynamic_cast, else, enum, explicit, export,
extern, false, float, for, friend, goto, if, inline,
-23-
Programarea calculatoarelor în limbajul C++
)
)
-
)
)
)
% E' 9 % E'
// 9
)
7
%
C F11' 3
&
)
"
%
G '
!
//
)
7
2
+
58
+
H
+
F
%+
'
0
0
%'
)
H
% '
% )
0
'
%)
HC
'
-24-
Programarea calculatoarelor în limbajul C++
:+
D
% )#' F
A
- '
+
& A
!
IF *
+
% )#'
%+
+
'
)
% '
)&7& +
@
8
$ )
"
)
2 )
2 )
)
(& 7
#include <iostream.h>
//variabile globale
int a, b;
char c;
char sir[20];
int read_vars()
{
//citirea valorilor variabilelor a si b
cout << "a="; cin >> a;
cout << "b="; cin >> b;
}
int main ()
{
//variabile locale
int result;
//citirea variabilelor
read_vars();
// procesare:
-25-
Programarea calculatoarelor în limbajul C++
result = a - b;
// afisarea rezultatului:
cout << result;
A
+
3 & )
%JK'
3 & )
% & ' )
+
(& 7
int a = 0;
(& 7
int a (0);
)
) +) //
(& 7
// initializarea variabilelor
#include <iostream.h>
int main ()
{
int a=5;
// valoarea initiala = 5
int b(2);
// valoarea initiala = 2
-26-
Programarea calculatoarelor în limbajul C++
int result;
// valoarea initiala nedeterminata
a = a + 3;
result = a - b;
cout << result;
)&*& A
A
+
)
#
2
)
)
+
&
(& 7
//primul exemplu cu siruri
#include <iostream.h>
#include <string>
using namespace std;
int main ()
{
string mystring = "Acesta este un sir";
cout << mystring;
return 0;
) ?
)
?
(& 7
-27-
Programarea calculatoarelor în limbajul C++
-28-
Programarea calculatoarelor în limbajul C++
'&,&
5
&
)
3 &
)
)
7
a = 5;
"
1
2
5
)
(
&
+ %?'
-
#
)
"
* #
HC %
' //
M %'
HN %+&
' *
&
% %
' *
&
(&7
75
// zecimal
0113
// octal
0x4b
// hexazecimal
$ )
O1 &
HC
M
HN
)
#
)
3
%
'
%
-29-
Programarea calculatoarelor în limbajul C++
'
75
// int
75u
// unsigned int
75l
// long
75ul
// unsigned long
-
& #
# !
2
8 8
5
)
4 &
? HC
P? P )
'
(&7
3.14159
6.02e23
1.6e-19
3.0
&
// *
#
-
%
&
' "
& "
I &
)
2
)
% '
#
# !
)
,
-30-
Programarea calculatoarelor în limbajul C++
*
&
%'
5
)
% ' %B'
%'
,
+ %
'
)
)
)
&
!
7
x
'x'
&
)
&
Q&Q %&
+ '
R %:'
R
)
# %
'
R %
'
R) )
%
)
'
R
-31-
Programarea calculatoarelor în limbajul C++
?'
R@
% @'
RR >+ % R'
- &
!
5
? %R'
5 &
%
M'
+&
%
HN' -
%'
? % & RFI R0C'
%+&
'
8
% & R&FC R&0'
=
(&
)
)7 %- '
&
// )
4
9=
4
:
5
)
=
4
7
#define identificator valoare
(&7
#define PI 3.14159265
-32-
Programarea calculatoarelor în limbajul C++
7 * <(;,<( 2
&
7
// constante definite: calculul circumferintei
#include <iostream>
using namespace std;
#define PI 3.14159
#define NEWLINE '\n';
int main ()
{
double r=5.0; // raza
double circle;
circle = 2 * PI * r;
cout << circle;
cout << NEWLINE;
return 0;
3
# #
) K
) % & *
<(;,<(' )
%IH0H1SFN1
) QRQ'
3
) K
//
)
6
)
+
Q.Q
#
)
)
9:
&
#
)
7
const int width = 100;
const char tabulator = '\t';
const zipcode = 12440;
-33-
Programarea calculatoarelor în limbajul C++
'&)& -
*
)
//
5
!
) +
//
//
)
)
-
9D:
2
)
)
7
a = 5;
a = b;
(& 7
// operatorul de asignare
#include <iostream>
using namespace std;
int main ()
{
int a, b;
// a:?, b:?
a = 10;
// a:10, b:?
b = 4;
-34-
Programarea calculatoarelor în limbajul C++
// a:10, b:4
a = b;
// a:4, b:4
b = 7;
// a:4, b:7
return 0;
)
0
)
)
O
)
5
) )
)
)
+
G
2
! // !
%
' )
%'
%
'
3 & 7
a = 2 + (b = 5);
(&
) //7
a = b = c = 5;
5
)
1
)
7
-
9 E (E FE 0E G :
/
"
T
4
-35-
Programarea calculatoarelor în limbajul C++
U
2
) 5
% G'
3 & 7
a = 11 % 3;
)
)
F
)
HH I
-
9DE (DE FDE 0DE GDE HHDE IIDE JDE KDE LD:
#
)
)
)
7
@
@
8
)
/G )
G )
/
6
6
"G 16 G " 16
4G 6 G4 6
TG / H6 G T % / H'6
3 & 7
// asignarea compusa
#include <iostream>
using namespace std;
int main ()
{
int a, b=3;
a = b;
a+=2;
// echivalent cu a=a+2
cout<< a;
return 0;
!
9E ((:
2
%'
%(('
)
" )
+) &
D,
-36-
Programarea calculatoarelor în limbajul C++
a+=1;
a=a+1;
9
&
#
#
#
#
)+
2
#
& # &
)
)
- &
3
#
%
'
& )
)
)
3 & 7
b=3;
a=++b;
//a contine 4, b contine 4
b=3;
a=b++;
//a contine 3, b contine 4
-
& )
)
)
- & )
)
- +
&
+)7
a=++a;
a=a++;
-
9DDE MDE HE IE HDE ID :
2
#
&
!
//7
GG (
BG 3
V
#
W #
VG
WG
-37-
Programarea calculatoarelor în limbajul C++
=
)
4
%)
' (&7
(7 == 5)
// evaluat ca false
(5 > 4)
// true
(3 != 2)
// true
(6 >= 6)
// true
(5 < 5)
// false
.
&
)
&
) (&7
a=2; b=3; c=6;
(a == 5)
// evaluat ca false deoarece a nu este egal cu 5
(a*b >= c)
// true deoarece (2*3 >= 6) este adev#rat
(b+4 > a*c)
// false deoarece (3+4 > 2*6) este fals
((b=2) == a)
// true
M 2
D % ??'
DD %
??'6
&
&
+) %
)
&
'
-
9 ME JJE LL :
2
M
//
<9 %/"'6
)
)
#
4
)
4
3 & 7
!(5 == 5)
// evaluat ca false deoarece expresia din dreapta (5 ==
5) este true
!(6 <= 4)
-38-
Programarea calculatoarelor în limbajul C++
2
JJ LL # )
&
2
JJ
X %/''
)
4
JJ
2
LL
59 %"'
)
4
) 4
*
7
LL
3 & 7
( (5 == 5) && (3 > 6) )
// evaluat ca false ( true && false )
( (5 == 5) || (3 > 6) )
// evaluat ca true ( true || false )
-
9 N :
2
)
&
)
)
4
7
conditie ? rezultat1 : rezultat2
-39-
Programarea calculatoarelor în limbajul C++
(&
7
// operatorul conditional
#include <iostream.h>
using namespace std;
int main ()
{
int a,b,c;
a=2;
b=7;
c = (a>b) ? a : b;
cout << c;
return 0;
'&'& -
0
- //
4
! 5
4
4
%'
-40-
Programarea calculatoarelor în limbajul C++
'&6& !
9
:
% & ' //
%
'
7 II
2
II
&
- &
!
?$&?
) )
)
8
5
) #
& %
'
+
)
cout << "Text";
// afiseaza "Text"
cout << Text;
// afiseaza continutul variabilei Text
2
%II'
7
cout << "Text: "<< Text << "\n";
'&7& !
9:
3
)
//
8 %HH' & %
' 2
HH
)
+
&
& %' 3 & 7
int a;
cin >> a;
*
)
%
'
)
$ *
+
#
$
%
)'
B
)
3
)
6
(&
4
7
-41-
Programarea calculatoarelor în limbajul C++
// exemplu I/O
#include <iostream.h>
using namespace std;
int main ()
{
int i;
cout << "Introduceti un numar intreg: ";
cin >> i;
cout << "Valoarea introdusa este " << i;
cout >> " iar dublul acesteia este " << i*2 <<
".\n";
return 0;
}
7
cin >> a >> b;
-
)
)
)
)7
-42-
Programarea calculatoarelor în limbajul C++
6&
6&,&
9
)
*
&
) *
//
-
7 > ?
6&)& !
8$ 4
&
) 3
)
%)
'
& 3
% & '
3 &
?& HCC? )
)
& HCC7
if (x == 100)
cout << "x este 100";
3
&
%'
7
if (x == 100)
{
cout << "x este ";
cout << x;
5
)
#
)# +
7
if (conditie) instructiune1 else instructiune2
-43-
Programarea calculatoarelor în limbajul C++
3 & 7
if (x == 100)
cout << "x este 100";
else
cout << "x nu este 100";
?& HCC? &
)
HCC ?& HCC? &
HCC
5
4
& #
)
)
& 7
if (x > 0)
cout << "x este pozitiv";
else if (x < 0)
cout << "x este negativ";
else
cout << "x este 0";
#
&
"
> ?
6&'& !
O
5&
2 ) )
)
&
7
switch (expresie)
{
case constanta1:
grup de instructiuni 1;
break;
case constanta2:
grup de instructiuni 2;
break;
. . .
default:
grup de instructiuni pentru executie implicita;
-44-
Programarea calculatoarelor în limbajul C++
O
3 &
& ) )
(
3 ) & ( # #
?
#
) O
3 )
&
%
# + '
) &
+
5)
+)7
//exemplu switch
switch (x)
{
case 1:
cout << "x este 1";
break;
case 2:
cout << "x este 2";
break;
default:
cout << "valoare necunoscuta";
//echivalent if-else
if (x == 1)
{
cout << "x este 1";
} else
if (x == 2)
{
cout << "x este 2";
}
else
{
cout << "valoare necunoscuta";
}
O & !
?
&
)
)
#
)
-45-
Programarea calculatoarelor în limbajul C++
)
&
)
M O
)
&
)
< )
+ % & < "
)
' )
% 0&*2'
// )
6&6& P O
O
7
while (conditie) instructiune
# %'
#include <iostream.h>
using namespace std;
int main ()
{
int n;
cout << "Enter the starting number > ";
cin >> n;
while (n>0) {
cout << n << ", ";
--n;
}
cout << "GO!";
return 0;
}
#
)
& 6 )
%VC'
&
#
%VC'
#
-46-
Programarea calculatoarelor în limbajul C++
,
=
+
)
& ) -
&
((.
)
)
H% )
6&7& P (O
7
do instructiune while (conditie);
O
#
%' 3
&
%
' . (O
O
*
!
# #
C %
'7
#include <iostream.h>
using namespace std;
int main ()
{
unsigned long n;
do {
cout << "Introduceti un numar (0 pentru încheierea
programului): ";
cin >> n;
cout << "Ati introdus numarul: " << n << "\n";
} while (n != 0);
return 0;
}
. (O
#
+
%
'
- &
6&;& P
4
7
for (initializare; conditie; incrementare)
instructiune;
-47-
Programarea calculatoarelor în limbajul C++
%
' # #
# )
= 3
4
&
)
7
8 &
3
)
)
&
8 )
3 )
%' +
&
8 &
8 &
#
.
% )
'
*
! &
)
"
<
// numaratoare inversa într-o bucla for:
#include <iostream.h>
using namespace std;
int main ()
{
for (int n=10; n>0; n--) {
cout << n << ", ";
}
cout << "GO!";
return 0;
}
. (O
#
+
%
'
- &
#
#
? ; -? %.' 3 &
7
0JL&%J2
0JL&%J552
-48-
Programarea calculatoarelor în limbajul C++
{
// instructiuni...
}
6&*& !
Q
Q
+
*
"
+
3 &
)
& 7
// exemplu de întrerupere a unei bucle
#include <iostream.h>
using namespace std;
int main ()
{
int n;
for (n=10; n>0; n--)
{
cout << n << ", ";
if (n==3)
{
cout << "numaratoarea inversa intrerupta!";
break;
}
}
return 0;
}
6&R& !
#
!
#
-49-
Programarea calculatoarelor în limbajul C++
- &
1
)
7
// exemplu de salt peste un pas al buclei
#include <iostream.h>
using namespace std;
int main ()
{
for (int n=10; n>0; n--) {
if (n==5) continue;
cout << n << ", ";
}
cout << "GO!";
return 0;
}
6&S& !
"
* +
2 +
"
$ % '
9 &
!7
// exemplu de utilizare a instructiunii goto
#include <iostream.h>
using namespace std;
int main ()
{
int n=10;
loop:
cout << n << ", ";
n--;
if (n>0) goto loop;
cout << "GATA!"; return 0;
}
-
6&,%& T
@
-50-
Programarea calculatoarelor în limbajul C++
@
*
)
C +
&
)
)
-51-
Programarea calculatoarelor în limbajul C++
7& T
7&,& +
/
4
!
"
)!
2
& #
"
7
tip nume ( parametru1, parametru2, ...) { instruc#iuni
}
7
8
%'
8
)
8 &M (M
%#
'
"
%
)
' *
)
$
8
)
& #
> ?
9 &
7
#include <iostream.h>
using namespace std;
int main ()
{
int z;
z = suma (5,3);
cout << "Rezultatul este " << z;
return 0;
}
2
//
) &
-52-
Programarea calculatoarelor în limbajul C++
-
)
7
-
5
)
3
)
%'
)
)
7
*
%
'
A
%1 I & '
-
A
%, *' )
,
%02J' +
A
%
)
)
'
)
-
&
7
// exemplu de utilizare a functiilor
#include <iostream.h>
using namespace std;
int main ()
{
int x=5, y=3, z;
z = diferenta (7,2);
cout << "Primul rezultat este " << z << '\n';
cout << "Al doilea rezultat este " << diferenta
(7,2) << '\n';
cout << "Al treilea rezultat este " << diferenta
(x,y) << '\n';
z= 4 + diferenta (x,y);
cout << "Al patrulea rezultat este " << z << '\n';
return 0;
}
-53-
Programarea calculatoarelor în limbajul C++
$
+)
//
3
#
3
)
& %
'
%'
#
void afisare_mesaj ()
{
cout << "Exemplu functie";
}
int main ()
{
afisare_mesaj ();
return 0;
}
$
&
3 & IN
7
void afisare_mesaj (void)
{
cout << "Exemplu functie";
}
2
)
6
#
(
7
-54-
Programarea calculatoarelor în limbajul C++
6 +
#
3 ) IN 7
afisare_mesaj ();
*
& )
)
//
7
afisare_mesaj;
7&'&
4
8
% )
' -
& #
)
)
)
3 &
%' 7
int x=5, y=3, z;
z = addition ( x , y );
-
)
, * )
8 C
) *
)
)
8 C
)
)
5
)
)
&
%
)
B' *
&
!7
int main ()
{
-55-
Programarea calculatoarelor în limbajul C++
-56-
Programarea calculatoarelor în limbajul C++
;& "
)
2
// 7
tip nume [elemente];
"""""""""""""""""""""""
;&)&
.
//
%'
$
#
)
3 & 7
char sir [20];
FC %
'
"""""""""""""""""""""""
;&'&
A
)
!
<
#
)
"""""""""""""""""""""""
-57-
Programarea calculatoarelor în limbajul C++
;&6&
2
%
'
)
5
// &
7
struct nume_structura {
tip_membru1 nume_membru1;
tip_membru2 nume_membru2;
tip_membru3 nume_membru3;
.
.
} nume_obiecte;
"""""""""""""""""""""""
-58-
Programarea calculatoarelor în limbajul C++
*&
8
*&,&
&
" +
# #
9
*
)
)
) +
7
class nume_clas# {
specificator_acces_1:
membru_1;
specificator_acces_2:
membru_2;
...
} nume_obiecte;
"""""""""""""""""""""""
-59-
Programarea calculatoarelor în limbajul C++
R&
C
R&,& 5
/
P 6&7
)
)
! .
//
01 ,
&
# " >
;: %5
" *
" .
'
# ;: (&
PW&<X< % >'
Y
7 Y
%
" $
' -
&
)
"
&
@
<
&
T
(
7
8+
8
8)
-60-
Programarea calculatoarelor în limbajul C++
8
8
&
*
T
-
2
O
)
%
'
*
-61-
Programarea calculatoarelor în limbajul C++
=
7
*
&
)
-62-
Programarea calculatoarelor în limbajul C++
+
-63-