Documente Academic
Documente Profesional
Documente Cultură
2
- minim si maxim
- sorteaza crescator si descrescator
- interschimbarea C1 cu C2
- interschimbarea L1 cu L2
4.Subprograme C++
4.1 Definitie
4.2 Forma generala
4.3 Structura unei functii in C++
4.4 Variabile locale . Variabile globale
4.5 Parametri formali. Parametri efectivi
4.6 Probleme cu subprograme :
Scrieti un program C++ care calculeaza :
-cmmdc dintr-un vector
-elemente prime dintr-un vector
-aria
-sortarea
-suma cifrelor
3
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.2 IDENTIFICATORI
1.Instructiunea IF:
Forma generala: If(conditie)instructiune 1;
4
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++
5
Int a[10]
10 5 19 40 1
for(i=1;i<=n;i++)
{
cout<<’’a[“<<i<<”]=”;
cin>>a[i];
for(i=1;i<=n;i++)
cout <<a[i]<<endl; unul sub altul
for(i=1;i<=n;i++)
cout<<a[i]<<” “; spatiu intre ele
for(i=1;i<=n;i++)
s=s+a[i];
cout<<”suma este”<<s;
#include<iostream.h>
void main()
7
{
int n,a[10],min;
cout<<”n=”;cin>>n;
for(i=1;i<=n;i++)
{
cout<<”a[“<<i<<”]=”;
cin>>a[i];
}
for(i=2;i<=n;i++)
if(a[1]<min) min=a[i];
cout<<”minimul este”<<min;
}
#include<iostream.h>
void main()
{
int n,a[10],max;
cout<<”n=”;cin>>n;
for(i=1;i<=n;i++)
{
cout<<”a[“<<i<<”]=”;
cin>>a[i];
}
for(i=2;i<=n;i++)
if(a[i]>max) max=a[i];
cout<<”maximul este”<<max;
}
8
#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++
int a [15][15];
9
3.3 Citirea elementelor unei matrici:
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
{
cout<<”a[“<<i<<”][“<<j<<”]=”;
cin>>a[i][j];
}
3.4 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()
{
10
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;
}
#include<iostream.h>
void main()
{
int a[15][15],m,n,i,j,max;
11
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;
}
#include<iostream.h>
void main()
{
12
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;
}
#include<iostream.h>
void main()
{
13
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;
}
#include<iostream.h>
void main()
{
int a[15][15],m,n,i,j,l1,l2;
cout<<”m=”;cin>>m;
14
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 C++
4.1 Definitie:
15
4.2 Forma generala:
16
Prin notiunea de Variabile Locale vom
intelege variabilele declarate in interiorul
corpului subprogramului respectiv.Acest tip de
variabile este recunoscut doar in cazul
subprogramului respectiv.
#include<iostream.h>
int cmmdc(int a,int b)
{
while(a!=b)
if(a>b)a=a-b;
18
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);
}
#include<iostream.h>
int prim(int n)
{
19
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”;
}
#include<iostream.h>
int suma(int n)
{
int c,s;
20
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);
}
#include<iostream.h>
float ipotenuza(int c1,int c2)
{
21
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);
}
#include<iostream.h>
int cmmdc(int a,int b)
{
22
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);
}
23