Académique Documents
Professionnel Documents
Culture Documents
Chapitre 4 : Tableaux
Filière SMP - S4
5 Chaînes de caractères
6 Fonctions et tableaux
Chaque élément est repéré par une valeur entière ou plus appelée indice
Déclaration
I En langage C++, la syntaxe de la déclaration d’un tableau à une dimension
est la suivante :
Syntaxe de déclaration :
type nom_tableau [ taille ] ;
I La taille d’un tableau est un entier constant qui ne peut pas changer
Exemples
I où indice peut être une valeur entière, une variable ou une expression.
I Le premier élément est repéré par l’indice 0.
Premier élément : nom_tableau [ 0 ] ;
I Le dernier élément est repéré par l’indice taille - 1.
Dernier élément : nom_tableau [ taille - 1 ] ;
Exemples :
I Lecture
Remplir le tableau tab à partir de clavier
I Écriture
afficher les éléments du tableau tab
Exemples :
float Note [3 ] [ 4 ];
/* Note [0][0] , Note [0][1] , Note [0] [2] , Note [0] [3] ,
Note [1][0] , Note [1][1] , Note [1] [2] , Note [1] [3] ,
Note [2][0] , Note [2][1] , Note [2] [2] , Note [2] [3] ,
*/
I Lecture
Saisir des données dans le tableau mat :
I Écriture
Afficher les éléments du tableau mat
I Remarque :
Pour déterminer la taille d’un tableau unidimensionnel ou la dimension d’un
tableau bidimensionnel, on peut utiliser la fonction sizeof() :
Exemple de déclaration :
float T [ 5 ] [ 4 ] [ 2 ]; // T est un tableau de 5 tableaux à 2 dim.
4 Chaînes de caractères
Définition
I Une chaîne de caractères est un tableau unidimensionnel de caractères.
I En C++, toute chaîne de caractères se termine par le caractère ’\0’.
I Une chaîne de caractères constante est délimitée par des doubles quotes "".
5 Fonctions et tableaux
Passage d’un tableau à une fonction
I Une fonction peut recevoir en argument un tableau de n’importe quel type.
I La syntaxe d’une fonction recevant un tableau en argument est :
Syntaxe de déclaration
type_retourné nom_fonction ( type nom_tableau[] ) ;
Syntaxe de déclaration :
type_retourné *nom_fonction ( type1 arg1, type2 arg2, ... ) ;
Driss ABADA Initiation à la programmation : Langage C++ Année Universitaire : 2019/2020 18 / 29
Fonctions et tableaux
Exemple :
// D é claration de la fonction
double somme ( double x [] , int n );
// pogramme principale
int main () {
double x [5] = {1 , 2 , 3 , 4 , 5};
double y = somme (x ,5);
cout << " somme = " << y << endl ;
return 0;
}
// D é finition de la fonction
double somme ( double x [] , int n ) {
double somme =0.;
for ( int i =0; i < n ; i ++)
somme = somme + x [ i ];
return somme ;
}
Exercice 1 :
1 Ecrire les fonctions qui permettent d’effectuer sur un vecteur numérique les
opérations suivantes :
I Saisie ;
I Affichage ;
I Module ;
est 300.
Corrigé de l’exercice 1
do {
cout < < " Donner votre choix " << endl ;
cin > > choix ;
switch ( choix ) {
case ’1 ’ :
cout < < " Saisir la taille du vecteur " << endl ;
cin > > n ;
Saisie (U , n );
case ’2 ’ :
Afficher (U , n );
break ;
case ’3 ’ :
cout < < " La somme est : " << Somme (U , n ) < < endl ;
break ;
Driss ABADA Initiation à la programmation : Langage C++ Année Universitaire : 2019/2020 22 / 29
Exercices corrigés
case ’4 ’ :
cout < < " Le module est " << Module (U , n ) < < endl ;
break ;
case ’q ’ :
case ’Q ’:
cout < < " ----- Fin du programme ------ " << endl ;
break ;
default :
cout < < " Vous avez que les choix 1 ,2 ,3 , q et Q " ;
}
} while (( choix != ’Q ’ )&& ( choix != ’q ’ ));
return 0;
}
Driss ABADA Initiation à la programmation : Langage C++ Année Universitaire : 2019/2020 23 / 29
Exercices corrigés
Exercice 2 :
Écrire un programme qui met à zéro les éléments de la diagonale principale d’une
matrice carrée A saisi au clavier. La dimension maximale de la matrice est 20x20.
Corrigé de l’exercice 2 :
Exercice 3 :
renvoyer sa longueur.
Corrigé de l’exercice 3 :
int main () {