vimavi
Messages postés4Date d'inscriptionjeudi 10 juin 2010StatutMembreDernière intervention11 juin 2010
-
10 juin 2010 à 21:04
Bonjour,
s'il vous plais pouvez vous me résoudre ce problème en algorithmique
problème
Dans le cadre de la gestion des moyennes TP de la matière « Atelier de programmation 2 » d'une classe composée de 2 groupes d'étudiants qui seront représentés dans 2 listes chaînées LG1 et LG2.
Un étudiant est représenté par :
- Nce : Numéro de carte d'étudiant
- Nom : Nom de l'étudiant
- Prenom : Prénom de l'étudiant
- Moy : Moyenne de l'étudiant
1) Ecrire une déclaration adéquate relative aux deux listes chaînées LG1 et LG2
2) Ecrire une fonction qui permet de créer un groupe d'étudiants en retournant comme résultat la liste chaînée. On indiquera la technique d'ajout utilisée (Ajout en tête ou ajout en queue).
Fonction CreerGroupe() : Liste
3) Ecrire une procédure CopieDonnees permettant de copier les données des champs d'une structure d'étudiant pointée par le pointeur Source dans les champs correspondants de la structure pointée par Dest.
Procedure CopieDonnees(Source : ^Elem, Dest : ^Elem)
4) Ecrire une procédure AjoutEnQueue permettant, à partir d'une liste chaînée L d'étudiants et d'un pointeur p sur un élément (étudiant), d'ajouter un étudiant à la liste. Exploiter la procédure CopieDonnees déjà développée.
Procedure AjoutEnQueue (Don L : Liste, Don P : ^Elem)
5) En supposant que les deux listes LG1 et LG2, représentant respectivement les données des étudiants des groupes G1 et G2, sont déjà créées et triées par ordre de mérite (ordre décroissant de moyenne).
On vous demande d'écrire une procédure nommée :
Fusionner(Don LG1 :Liste, LG2 : Liste, Res L : Liste) permettant, à partir de LG1 et LG2, de créer la liste L qui sera la fusion (l'union) de ces deux listes en ayant la liste résultat L automatiquement triée par ordre de mérite (c-a-d sans effectuer une opération de tri)
6) Ecrire un algorithme principal permettant :
- de créer une liste chaînée d'un groupe d'étudiants LG1
- de créer une liste chaînée d'un groupe d'étudiants LG2
- de fusionner LG1 et LG2 pour avoir une seule liste L automatiquement triée (en supposant que LG1 et LG2 sont triées)
- d'afficher la liste ordonnée des étudiants de toute la classe