exemple de manipulation de tableaux , toutes les opérations sur les tableauc des entiers en C++
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#define MAX 50
typedef int T[10];
void ChargeTableau(T);
void Affiche_Tableau(T);
void Rempli_Tableau(T t,int val);
int Max_Tableau(T t);
int Min_Tableau(T t);
int Moy_Tableau(T t);
int Val_Sup(T t,int val);
void Inverse_Tableaux(T t,T t2);
void Somme_Tableaux(T t,T t2,T t3);
int Rang_Tableau(T t,int val);
void Sup_Valeur(T t,int val);
void main(void)
{
int val1;
T t1,t2,t3;
clrscr();
ChargeTableau(t1);
Affiche_Tableau(t1);
ChargeTableau(t2);
Affiche_Tableau(t2);
val1 = 10;
Rempli_Tableau(t3,val1);
Affiche_Tableau(t3);
cout << "le maxi est " << Max_Tableau(t1) << "\n";
cout << "le mini est " << Min_Tableau(t1) << "\n";
cout << "la moyenne est :" << Moy_Tableau(t1) << "\n";
val1= 20;
cout<<"le nombre de valeur sup "<> val1;
cout << "Rang = " << Rang_Tableau(t1,val1) << "\n";
cout << "Saisir une valeur à supprimer ";
cin >> val1;
Sup_Valeur(t1,val1);
Affiche_Tableau(t1);
getch();
}
//**************************************************************
void ChargeTableau(T t)
{
int i;
randomize();
for(i=0;i<10;i++)
t[i]=random(MAX);
}
//**************************************************************
void Affiche_Tableau(T t)
{
int i;
for(i=0;i<10;i++) cout << t[i] << " ";
cout << "\n";
getch();
}
//**************************************************************
void Rempli_Tableau(T t,int val)
{
int i;
for(i=0;i<10;i++)
t[i] = val ;
}
//**************************************************************
int Max_Tableau(T t)
{
int i,pg;
pg = 0;
for(i=0;i<10;i++)
{
if( t[i] > pg )
pg = t[i];
}
return pg;
}
//**************************************************************
int Min_Tableau(T t)
{
int i,pg;
pg = 999999;
for(i=0;i<10;i++)
{
if( t[i] < pg )
pg = t[i];
}
return pg;
}
//**************************************************************
int Moy_Tableau(T t)
{
int i,moy=0;
for(i=0;i<10;i++) moy += t[i];
moy = moy /10;
return moy;
}
//**************************************************************
int Val_Sup(T t,int val)
{
int i,j=0;
for(i=0;i<10;i++)
{
if(t[i] > val) j++;
}
return j;
}
//**************************************************************
void Inverse_Tableaux(T t1,T t2)
{
int i,j=0,k=0;
for(i=0,j=9; i<10;i++,j--)
{
k = t1[i] ;
t1[i] = t2[j];
t2[j] = k;
}
}
//**************************************************************
void Somme_Tableaux(T t1,T t2,T t3)
{
int i;
for( i=0;i<10;i++) t3[i] = t1[i]+t2[i];
}
//**************************************************************
int Rang_Tableau(T t,int val)
{
int i,j=-1;
for( i=0;i<10;i++)
{
if(t[i] == val) j= i;
}
if( j!= -1)
return j+1;
else
{
cout << "valeur non trouv‚e\n";
return j;
}
}
//**************************************************************
void Sup_Valeur(T t,int val)
{
int i, j=-1;
for( i=0;i<10;i++)
{
if(t[i] == val) j = i;
}
if( j != -1)
{
for(i=j; i<10; i++) t[i]=t[i+1];
t[9]=0;
}
else
cout << "Valeur non trouv‚e\n";
}