0% ont trouvé ce document utile (0 vote)
34 vues4 pages

TP sur les Tableaux en Langage C

Ce document décrit un TP sur les tableaux en langage C. Il présente la déclaration et l'utilisation des tableaux à une et plusieurs dimensions, et détaille quatre travaux pratiques portant sur des exercices utilisant les tableaux.

Transféré par

fredericcasco
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
34 vues4 pages

TP sur les Tableaux en Langage C

Ce document décrit un TP sur les tableaux en langage C. Il présente la déclaration et l'utilisation des tableaux à une et plusieurs dimensions, et détaille quatre travaux pratiques portant sur des exercices utilisant les tableaux.

Transféré par

fredericcasco
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Année Universitaire 2018-2019

Université d'Abomey-Calavi (UAC)


Faculté des Sciences et Techniques (FAST)
Département de Mathématiques
2ème année de Maths & Informatique (MI 2)

Langage C : Structures de Données Avancées (SDA2204)


TP : Les Tableaux

 déclaration et utilisation des tableaux à une dimension et à plusieurs dimensions;


DESCRIPTIF DU TP

 utilisation d'un tableau dans une fonction.


Table des matières

1.1 Tableau à une dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1


1 ELEMENTS NOTIONNELS 1

1.1.1 Déclaration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2 Utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Tableau à plusieurs dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Déclaration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 Utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Initialisation des tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.1 TP1 ........................................................... 2
2 Les Travaux Pratiques 2

2.2 TP2 ........................................................... 3


2.3 TP3 ........................................................... 3
2.4 TP4 ........................................................... 4
1 ELEMENTS NOTIONNELS
Les tableaux correspondent aux matrices en mathématiques. Un tableau est caractérisé par :
1. son nom;
2. le type des éléments qu'il contient;
3. son nombre d'éléments (sa dimension).
1.1 Tableau à une dimension
1.1.1 Déclaration

typeT ableau monT ableau[nombreElements];

Avec cette déclaration, le compilateur réserve nombreElements places de type typeT ableau en mémoire pour ranger les
éléments du tableau monT ableau.
Exemple
double moyennes[12];
int compteur[17];

1.1.2 Utilisation

Les éléments d'un tableau sont repérés par leur indice.


monT ableau[indice]
En langage C les tableaux commencent à l'indice 0.
L'indice maximum du tableau monT ableau est donc nombreElements − 1.
1
Exemple : Lecture au clavier et achage des éléments du tableau moyennes[12]
for (int i=0; i<12; i++){
printf("Entrez l'élément moyenne[i] du tableau\n");
scanf("%lf\",&moyennes[i]);
}
printf("AFFICHAGE DU TABLEAU\n");
for (int i=0; i<12; i++){
scanf("moyennes[%d]=%lf\",i, &moyennes[i]);
}
1.2 Tableau à plusieurs dimensions
1.2.1 Déclaration

typeT ableau monT ableau[nombreElements1][nombreElements2][nombreElements3]...[nombreElementsn];

Exemple
f loat matrice[2][3];
int compteur[17][2][8];

1.2.2 Utilisation

Les éléments d'un tableau sont repérés par leur indice.


matrice[indice1][indice2]

Exemple
 
2 3.5 6
matrice =
−1.7 4 7.8
matrice[0][0] = 2;
matrice[0][1] = 3.5;
matrice[0][2] = 6;

matrice[1][0] = −1.6;
matrice[1][1] = 4;
matrice[1][2] = 7.8;

1.3 Initialisation des tableaux


On peut initialiser les tableaux au moment de leur déclaration
Exemple
int nombres[7] = {7, 50, -10, 0, 14, -3, 10};
oat moyennes[4] = {2.75, 5, 18, 1.5};
int A[2][3] = {{2,0,1},{5,-4,7}};
2 Les Travaux Pratiques
2.1 TP1
Ecrire un programme permettant de :
1. Saisir la taille n (n<10) d'un vecteur.
2. Saisir un vecteur V d'entier.
2
3. Diviser ce vecteur en deux sous vecteurs VP et VI, avec VP contient les éléments pairs de V et VI contient les éléments
impairs de V.
4. Acher les deux vecteurs VP et VI.
2.2 TP2
Pour un vecteur x = (x , x , ....., x ), on a :
1 2 n

n
!1/2
X
kxk = x2i
i=1

Ecrire un programme qui :


1. Saisi n la dimension de x.
2. Saisi les coordonnées de x (en utilisant une boucle do ... while).
3. Calcule et ache la norme de x.
2.3 TP3
Le but de cet exercice est d'implanter un programme de gestion des notes des étudiants. Ce programme doit faciliter
l'impression des statistiques concernant les notes obtenues par les étudiants pour un examen.
Pour cet exercice, nous supposons que le nombre d'étudiants est xe et que les notes doivent appartenir à l'intervalle [0;
20]. Etant donné que le programme a pour objectif de fournir des statistiques, nous ne tiendrons pas compte des noms des
étudiants; seules les notes nous intéressent.
Les statistiques attendues sont :
• La note la plus basse ainsi que la note la plus élevée;
• La moyenne, la variance et l'écart-type;

Pour rappel (voir bibliothèque math.h) :


rP
(x − x̄)2 (x − x̄)2
P
variance : ; Ecart − T ype :
n n

Jeu de tests
Le programme que vous allez réaliser devra être testé. Voici un exemple de test :
indice 0 1 2 3 4
valeur 12, 0 13, 5 8, 5 14, 7 6, 0

Quelles sont les valeurs attendues pour :


Note la plus basse
Note la plus élevée
Moyenne des étudiants
Variance
Ecart-type
Position dans le tableau de la valeur 13,5
Position dans le tableau de la valeur 10,5

Travail à réaliser
1. Ecrire une fonction acherNotes() qui ache à l'écran toutes les notes obtenues à l'examen.
2. Ecrire une fonction minimumNote() qui prend en entrée un tableau de notes et sa taille et qui retourne la note la plus
basse obtenue à l'examen.
3. Ecrire une fonction maximumNote() qui prend en entrée un tableau de notes et sa taille et qui retourne la note la
plus élevée obtenue à l'examen.
4. Ecrire une fonction calculeMoyenne() qui prend en entrée un tableau de notes et sa taille et qui retourne la moyenne
des notes.
3
5. Ecrire une fonction calculeVariance() qui prend en entrée un tableau de notes et sa taille et qui retourne la variance.
6. Ecrire une fonction calculeEcartType() qui prend en entrée un tableau de notes et sa taille et qui retourne l'écart-type.
7. Ecrire une fonction rechercherValeur() qui prend en entrée un tableau de notes, sa taille et une valeur à rechercher.
Cette fonction retourne la position de la valeur dans le tableau, -1 si la valeur n'a pas été trouvée.
2.4 TP4
Le but de cet exercice est de manipuler des tableaux à deux dimensions. Vous devez réaliser un programme qui permette
de créer et d'initialiser une matrice, d'acher une matrice, d'additionner deux matrices, de calculer la transposée d'une
matrice et de calcul le produit matriciel de deux matrices.
1. Ecrire un programme (main) qui crée une matrice de taille xe, qui l'initialise et qui l'ache.
2. Ecrire une fonction acherMatrice() qui ache une matrice de dimension deux.
3. Ecrire une fonction additionnerMatrices() qui calcule la somme de deux matrices de dimension deux.
4. Ecrire une fonction transposee() qui calcule la matrice transposée d'une matrice de dimension deux.
5. Ecrire une fonction produitMatriciel() qui réalise un produit matriciel de deux matrices de dimension deux.

Vous aimerez peut-être aussi