TD N°11 Structures de données : Tableau 1D

publicité
TD N°11
Structures de données : Tableau 1D
(Exercices de TD)
1. Déclarer un tableau de 9 réels et l’initialiser avec la valeur 0.
2. Écrire l’algorithme d’un sous-programme RemplirTableau qui remplit un tableau
de 9 notes (réelles) avec des valeurs demandées à l’utilisateur.
12 18.5 13.25 08.75 16 15 13.5 12 17
3. Écrire l’algorithme d’un sous-programme AfficheTableau qui permet d’afficher les 9
valeurs contenues dans le tableau.
4. Écrire l’algorithme d’un sous-programme RechercheMin qui permet de retourner
l’indice de la plus petite valeur contenue dans le tableau.
5. Écrire l’algorithme d’un sous-programme SommeTableau calculant la somme des
valeurs du tableau précédent : SommeTableau = 126.
6. Écrire l’algorithme d’un sous-programme permettant de renverser le contenu d’un
tableau contenant des caractères.
Avant exécution : T1 : A B C D E F G H I
Après exécution : T2 : I H G F E D C B A
(Exercices supplémentaire)
7. On dispose de deux tableaux de tailles identiques T1 et T2 contenant les notes de
contrôle continu et d’examen d’un étudiant pour 9 modules données. On souhaite à
partir de ces deux tableaux constituer un troisième tableau (noté T3) contenant les
moyennes pondérées par les coefficients suivants :
o Contrôle continu (T1) : coefficient 1
o Examen terminal (T2) : coefficient 2
8. Écrire l’algorithme d’un sous-programme CalculMoyenneTableau permettant à
partir des deux premiers tableaux de remplir un troisième tableau T3 en utilisant les
coefficients donnés.
Mr. REGUIEG Seddik
Maitre Assistant B
Exemple de calcul 14 = (12*1 + 15*2) / 3
T1 : 12 08 5.5 14 13 10.5 07 16 09
T2 : 15 03 12 17 08 10 08 19 03
T3 : 14 4.66 9.83 16 9.66 10.16 7.66 18 5
Structures de données : Tableau 2D
(Exercices de TD)
9. Soit M une matrice carrée de taille 5x5 contenant des entiers. Écrire la déclaration et
l’initialisation d’une telle structure de données.
10. Écrire un algorithme RemplirMatrice qui propose à l’utilisateur de remplir une
matrice M de taille 5x5.
5
6
1
4
0
1
9
1
5
2
8
7
0
7
5
6
4
9
3
0
0
2
7
0
9
11. Écrire deux procédures d’affichage d’une matrice 2D de taille 5*5 :
o Affichage_2D_ligne : qui affichera la matrice ligne par ligne.
o Affichage_2D_colonne : qui affichera la matrice colonne par colonne.
12. Écrire trois fonctions permettant sur matrice 2D de taille 5*5:
o De calculer la somme des éléments d’une ligne (le numéro de la ligne étant
passé en paramètre).
o De calculer la somme des éléments d’une colonne (le numéro de la colonne
étant passé en paramètre)
o De calculer la somme des éléments de la diagonale (dans la mesure où la
matrice est bien carrée)
(Exercices supplémentaire)
Mr. REGUIEG Seddik
Maitre Assistant B
13. Écrire un algorithme RecherchePlusGrand permettant de rechercher le plus grand
élément de cette matrice et de retourner l’indice de ligne et l’indice de colonne
correspondant à cet élément.
14. Écrire un algorithme TrianglePascal permettant de remplir les cases d’un tableau
2D avec les coefficients du triangle de Pascal.
Remarques : La hauteur du triangle sera passée en paramètre et on supposera la
fonction combinaison écrite.
Exemple :
1
1
1
1
1
1
1
2
3
4
5
1
3
6
10
1
4
10
1
5
1
15. Écrire un algorithme qui déclare et remplisse un tableau de 7 valeurs numériques en
les mettant toutes à zéro.
16. Écrire un algorithme qui déclare et remplisse un tableau contenant les six voyelles de
l’alphabet latin.
17. Écrire un algorithme qui déclare un tableau de 9 notes, dont on fait ensuite saisir les
valeurs par l’utilisateur.
18. Écrivez un algorithme permettant à l’utilisateur de saisir un nombre quelconque de
valeurs, qui devront être stockées dans un tableau. L’utilisateur doit donc
commencer par entrer le nombre de valeurs qu’il compte saisir. Il effectuera ensuite
cette saisie. Enfin, une fois la saisie terminée, le programme affichera le nombre de
valeurs négatives et le nombre de valeurs positives.
19. Écrivez un algorithme constituant un tableau, à partir de deux tableaux de même
longueur préalablement saisis. Le nouveau tableau sera la somme des éléments des
deux tableaux de départ.
Tableau 1 : 4 8 7 9 1 5 4 6
Tableau 2 : 7 6 5 2 1 3 7 4
Tableau à constituer : 11 14 12 11 2 8 11 10
Mr. REGUIEG Seddik
Maitre Assistant B
20. Toujours à partir de deux tableaux précédemment saisis, écrivez un algorithme qui
calcule le schtroumpf des deux tableaux. Pour calculer le schtroumpf, il faut
multiplier chaque élément du tableau 1 par chaque élément du tableau 2, et
additionner le tout. Par exemple si l'on a :
Tableau 1 : 4 8 7 12
Tableau 2 : 3 6
Le Schtroumpf sera :
3 * 4 + 3 * 8 + 3 * 7 + 3 * 12 + 6 * 4 + 6 * 8 + 6 * 7 + 6 * 12 = 279
21. Écrivez un algorithme remplissant un tableau de 6 sur 13, avec des zéros.
22. Écrire un algorithme de jeu de dames très simplifié.
o L’ordinateur demande à l’utilisateur dans quelle case se trouve son pion
(quelle ligne, quelle colonne). On met en place un contrôle de saisie afin de
vérifier la validité des valeurs entrées.
o Ensuite, on demande à l’utilisateur quel mouvement il veut effectuer :
 0 (en haut à gauche).
 1 (en haut à droite).
 2 (en bas à gauche).
 3 (en bas à droite).
o Si le mouvement est impossible (i.e. on sort du damier), on le signale à
l’utilisateur et on s’arrête là. Sinon, on déplace le pion et on affiche le damier
résultant, en affichant un « O » pour une case vide et un « X » pour la case où
se trouve le pion.
Mr. REGUIEG Seddik
Maitre Assistant B
Téléchargement