Sunteți pe pagina 1din 22

Cuprins

1.Elemente de baza ale limbajului C++


1.1 Vocabularul limbajului C++
1.2 Instructiunea limbajului C++
1.2.2 Instructiuni decizionale
1.2.3 Instructiune pt. Citire
1.2.4 Instructiune repetitiva

2. Vectori in c++
2.1 Declararea unui vector
2.2 Exemplu de vector
2.3 Citirea elementelor unui vector
2.4 Afisarea elementelor unui vector
2.5 Probleme cu vectori
Scrieti un program c++ care
calculeaza:
-suma elementelor unui vector
-min sau max dintr-un vector
-sorteaza crescator sau descrescator
elem. Unui vector
3. Matrici in C++
3.1 Declararea unei matrici
3.2 Exemplu de matrice
3.3 Citirea unei Matrici
3.4 Afisarea elementelor unei matrici
3.5 Probleme cu matrici
Scrieti un program c++ care
calculeaza:
- suma elementelor unei matrici
- min sau max dintr-o matrice
- sorteaza crescator sau descrescator
elem. Unei matrici
-Interschimbarea coloanei C1 cu C2
-interschimbare L1 cu L2
4. Subprograme in c++
4.1 Definitia subprogramelor
4.2 Forma generala
4.3 Structura unu functii in c++
4.4 Variabile locale.variabile globale
4.5 Parametri formali parametri
efectivi
4.6 Probleme cu subprograme
- c.m.m.d.c dintr-un vector
- elemente prime din vector
- 3 probleme la alegere din caiet

1.Elementele de baza ale limbajului c++


Setul de caractere
La scrierea programelor se foloseşte setul de caractere
al codului ASCII. Mulţimea caracterelor se împarte în trei
grupe:
 caractere negrafice: cod Ascii < 32 şi DEL(cod
127 - excepţie)
- au diferite funcţii speciale, spre exemplu:
\n - rând nou
\t - TAB
\b - backspace
\v - TAB vertical
\f - salt de pagină etc.
 spaţiu cod Ascii = 32
 caractere grafice cod Ascii > 32
- literle mari ale alfabetului englez (A cod
65)
- literele mici ale alfabetului englez (a cod
97)
- cifre 0..9 (0 cod 48)
- caractere speciale: !, ", *. + etc.

1.2 Instructiunile limbajului c++


1. Instructiunea “if”:
Forma generala:
If(conditie)instructiune 1;
Else instructiune 2;

2. Instructiunea “while”:
Forma generala:
While(conditie)instructiune;

3.Instructiunea “for”:
Forma generala:
For(expresie text;expresie initializare;
incrementare/decrementare);

2.Vectori in c++

Declararea unui vector:


int a[99];

Exemplu:

2 7 4 9 15
Citirea elementelor unui vector:
for(i=1;i<=n;i++)
{
cout<<”a[“<<i<<”]=”;
cin>>a[i];
}
Afisarea elementelor unui vector:
for(i=1;i<=n;i++)
{
cout<<a[i]<<” “;
}

Probleme cu vectori

1. Scrieti un program c++ care


calculeaza suma elementelor unui vector.
#include<iostream.h>
void main()
{
int n,i,a[10];
cout<<”n=”;cin>>n;
for(i=1;i<=n;i++)
{
cout<<”a[“<<i<<”]=”;
cin>>a[i];
}
s=0;
for(i=1;i<=n;i++)
{
s=s+a[i];
}
cout<<”Suma este”<<” “<<s;
}

2. Scrieti un program c++ care calculeaza


minimul dintr-un vector.

#include<iostream.h>
void main()
{
int a[10],n,i,min;
cout<<”n=”;cin>>n;
for(i=1;i<=n;i++)
{
cout<<”a[“<<i<<”]=”;
cin>>a[i];
}
min=a[i];
for(i=1;i<=n;i++)
{
if(min<a[i])min=a[i];
}
cout<<”Minimul este”<<” “<<min;
}

3. Scrieti un program C++ care sorteaza


crescator elementele unui vector.
#include<iostream.h>
void main()
{
int a[10],n,i,aux;
cout<<”n=”;cin>>n;
for(i=1;i<=n;i++)
{
cout<<”a[“<<i<<”]=”;
cin>>a[i];
}
for(i=1;i<=n;i++)
{
if(a[i]<a[i]+1)
aux=a[i];
a[i]=a[i]+1;
a[i]+1=aux;
}
cout<<a[i]<<” “;
}

3. Matrici in C++

Declararea unei matrici:


int a [15][15];

Exemplu de matrice:

Citirea elementelor unei matrici:


for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<”a[“<<i<<”][“<<j<<”]=”;
cin>>a[i][j];
}
Afisarea elementelor unei matrici:
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<a[i][j]<<” “;
cout<<endl;
}

Probleme cu matrici

1. Scrieti un program C++ care calculeaza


suma elementelor unei matrici.
#include<iostream.h>
void main()
{
int a[i][j],m,n,i,j,s;
cout<<”m=”;cin>>m;
cout<<”n=”;cin>>n;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<”a[“<<i<<”][“<<j<<”]=”;
cin>>a[i][j];
}
s=0;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
s=s+a[i][j];
}
cout<<”Suma este”<<s;
}

2. Scrieti un program C++ care


calculeaza maximun dintr-o matrice.
#include<iostream.h>
void main()
{
int a[15][15],m,n,i,j,max;
cout<<”m=”;cin>>m;
cout<<”n=”;cin>>n;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<”a[“<<i<<”][“<<j<<”]=”;
cin>>a[i][j];
}
max=a[i][j];
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
if(max>a[i][j];
max=a[i][j];
}
cout<<”Maximul este”<<” “<<max;
}

3. Scrieti un program C++ care sorteaza


crescator elementele unei matrici.
#include<iostream.h>
void main()
{
int a[15][15],m,n,i,j,aux;
cout<<”m=”;cin>>m;
cout<<”n=”;cin>>n;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<”a[“<<i<<”][“<<j<<”]=”;
cin>>a[i][j];
}
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
if(a[i][j]<a[i][j]+1)
aux=a[i][j];
a[i][j]=a[i][j]+1;
a[i][j]+1=aux;
}
cout<<a[i][j]<<””;cout<<endl;
}
4. Scrieti un program C++ care
interschimba coloana c1 cu coloana c2.
#include<iostream.h>
void main()
{
int a[15][15],m,n,i,j,c1,c2;
cout<<”m=”;cin>>m;
cout<<”n=”;cin>>n;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<”a[“<<i<<”][“<<j<<”]=”;
cin>>a[i][j];
}
for(j=1;j<=n;j++)
{
aux=a[1][j];
a[1][j]=a[2][j];
a[2][j]=aux;
}
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<a[i][j]<<” “;
cout<<endl;
}
5. Scrieti un program C++ care
interschimba linia l1 cu linia l2.
#include<iostream.h>
void main()
{
int a[15][15],m,n,i,j,l1,l2;
cout<<”m=”;cin>>m;
cout<<”n=”;cin>>n;
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<”a[“<<i<<”][“<<j<<”]=”;
cin>>a[i][j];
}
for(i=1;i<=m;i++)
{
aux=a[i][1];
a[i][1]=a[i][2];
a[i][2]=aux;
}

for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<a[i][j]<<” “;
cout<<endl;
}
4. Subprograme in C++
Definitie:
Prin notiunea de subprogram
intelegem un ansamblu de date,
variabile si instructiuni scrise pentru
o anumita prelucrare,care,pentru a fi
folosit,trebuie apelat dintr-un alt
subprogram sau program.

Forma generala:
[tip rezultat]nume(parametri formali)
{
corp functie
}

Structura unei functii in C++:


Orice subprogram are doua
componente:
1) Antetul subprogramului care
contine numele si tipul functiei si
lista de parametri formali.
2)Corpul subprogramului.
Variabile Locale.Variabile Globale

Prin notiunea de variabila globala


vom intelege acele variabile care sunt
declarate in afara corpului oricarei
functii.Aceste variabile sunt
recunoscute in toate subprogramele
folosite in program.

Prin notiunea de variabila locala


vom intelege variabilele declarate in
interiorul corpului subprogramului
respectiv.Acest tip de variabile este
recunoscut doar in cazul
subprogramului respectiv.
Parametri formali.Parametri efectivi
Parametrii formali sunt vizibili
doar in corpul functiei care ii
defineste.O functie poate deci
prelucra variabilele globale, cele
locale, precum si parametrii
formali.Pentru reutilizare si pentru a
nu modifica accidental variabilele
globale, este indicat ca o functie sa
nu acceseze variabilele globale.
Parametrii efectivi sunt
expresiile folosite împreuna cu
numele procedurii atunci când
aceasta este apelata.Din moment ce
parametrii efectivi trebuie sa fie
substituiti de parametrii formali
corespunzatori, transmiterea
parametrilor trebuie facuta
respectând regula de mai jos.
Regula. Parametrii efectivi
trebuie sa corespunda cu
parametrii formali în ceea ce
priveste: numarul,
compatibilitatea atribuirii (tipul),
pozitia.

Probleme cu subprograme
1. Scrieti un subprogram care calculeaza
C.M.M.D.C. dintr-un vector.
#include<iostream.h>
int cmmdc(int a,int b)
{
while(a!=b)
if(a>b)a=a-b;
else b=b-a;
return a;
}
void main()
{
int a[10],n,i;
cout<<”n=”;cin>>n;
for(i=1;i<=n;i++)
{
cout<<”a[“<<i<<”]=”;
cin>>a[i];
}
for(i=1;i<=n;i++)
cout<<cmmdc(a,b);
}

2. Scrieti un subprogram care foloseste o


functie care verifica daca un nr este prim.

#include<iostream.h>
int prim(int n)
{
int prim,i;
prim=1;
for(i=2;i<=n/2;i++)
if(n%i= =0)prim=0;
return prim;
}
void main()
{
int n;
cout<<”n=”;cin>>n;
if(prim(n)= =1)cout<<”Numarul este
prim”;
else cout<<”Numarul nu este
prim;
}
3. Scrieti un subprogram care calculeaza
suma cifrelor unui numar

#include<iostream.h>
int suna(int n)
{
int c,s;
while(n!=0)
{
c=n%10;
s=s+c;
n=n/10;
}
return s;
}
void main()
{
int n;
cout<<”n=”;cin>>n;
cout<<suma(n);
}
4. Scrieti un subprogram care primeste ca
parametru lungimea celor doua catete si
returneaza lungimea ipotenuzei.

#include<iostream.h>
float ipotenuza(int c1,int c2)
{
int ip;
ip=sqrt(c1*c1+c2*c2);
return ip;
}
void main()
{
int c1,c2;
cout<<”c1=”;cin>>c1;
cout<<”c2=”;cin>>c2;
cout<<ipotenuza(c1,c2);
}
5. Scrieti un subprogram care calculeaza
C.M.M.D.C. dintre 3 numere.

#include<iostream.h>
int cmmdc(int a,int b)
{
while(a!=b)
if(a>b)a=a-b;
else b=b-a;
return a;
}
void main()
{
int x,y,z,cm;
cout<<”x=”;cin>>x;
cout<<”y=”;cin>>y;
cout<<”z=”;cin>>z;
cm=cmmdc(x,y);
cout<<cmmdc(cm,z);
}

S-ar putea să vă placă și