Un logiciel polyvalent d'apprentissage de la programmation
Chapitre 1. Introduction
Chapitre 2. Le logiciel en bref
Chapitre 3. Premiers pas en algorithmique
Chapitre 4. Instructions conditionnelles
Chapitre 5. Boucles
Chapitre 6. Sous-programmes
Chapitre 7. Tableaux à une dimension
Chapitre 8. Tableaux à deux dimensions
8.1. Présentation
8.2. Travaux dirigés
8.3. Travaux pratiques
Chapitre 9. Enregistrements
Annexe : comment tester vos programmes ?
Page d'accueil Table des matières Niveau supérieur Page précédente Bas de la page Page suivante Démarrage du logiciel Webographie du module Glossaire du module

8.2. Travaux dirigés

Les solutions Larp aux exercices posés dans ce chapitre sont disponibles en cliquant ici, mais je vous conseille vivement de chercher auparavant à les résoudre et à les tester sur machine (en Larp ou dans le langage de votre choix).

Exercice 1 : notes

Un tableau à 2 dimensions est ici utilisé pour stocker toutes les notes et, dans la dernière ligne (respectivement colonne), la moyenne de chaque matière (respectivement étudiant).

  1
(matière 1)
2
(matière 2)
...
m
(matière m)
m+1
(moyenne)
1 (étudiant 1)          
2 (étudiant 2)          
...          
n (étudiant n)          
n+1 (moyenne)          

1) Ecrivez un programme saisissant le nombre d'étudiants (n), le nombre de matières (m) et les notes (tableau notes).

2) Complétez le programme précédent en calculant la moyenne dans chaque matière (ligne n+1) et la moyenne de chaque étudiant (colonne m+1) :

...
\\ moyennes de lignes (d'étudiants)
POUR i=1 JUSQU'À n FAIRE
    \\ calcul de la somme de la ligne i
    somme = 0
    ...
    notes[i][m+1] = somme / m
FINPOUR
\\ moyennes de colonnes (de matières)
POUR j=1 JUSQU'À m FAIRE
    \\ calcul de la somme de la colonne j
    somme = 0
    ...
    notes[n+1][j] = somme / n
FINPOUR

3) Complétez le programme précédent en affichant la moyenne dans chaque matière (ligne n+1) et la moyenne de chaque étudiant (colonne m+1).

Exercice 2 : compétition

Un tableau à 2 dimensions est ici utilisé pour gérer une compétition de saut à skis.

  1
(juge 1)
2
(juge 2)
3
(juge 3)
4
(juge 4)
5
(juge 5)
6
(note finale)
1 (skieur 1)            
2 (skieur 2)            
...            
n (skieur n)            

1) Ecrivez un programme saisissant le nombre de skieurs (n), leurs notes (colonnes 1 à 5 du tableau notes).

2) Complétez le programme précédent en calculant la note finale de chaque skieur (colonne 6) :

...
\\ calcul des notes finales (colonne 6)
POUR i=1 JUSQU'À n FAIRE
    \\ calcul de la note minimale du skieur i
    ...
    \\ calcul de la note maximale du skieur i
    ...
    \\ calcul du total des notes du skieur i
    ...
    \\ calcul de la note finale du skieur i
    notes[i][6] = somme - mini - maxi
FINPOUR

3) Adaptez l'algorithme de tri étudié dans le chapitre 7 afin de classer les skieurs par note finale décroissante.

Remarque : quand on échange deux notes finales dans la colonne 6, il faut songer à en faire de même pour les notes des juges dans les colonnes 1 à 5.

Page d'accueil Table des matières Niveau supérieur Page précédente Haut de la page Page suivante Démarrage du logiciel Webographie du module Glossaire du module