Programme en turbo pascal

Programme en turbo pascal - Programmation

Marsh Posté le 21-02-2001 à 13:35:31    

J'ai un sujet de turbo pascal à faire et j'ai besoin d'aide  
J'en ai fait une partie mais j'aurais besoin de conseil sur ce programme et sur la suite  
Merci  
 
Voila le sujet  
Gestion des étudiants  
Il s'agit de gérer (créer, trier et maintenir) un fichier des étudiants contenant les informations suivantes:  
®  nom, prénom,  
®  filière,  
®  note d'anglais.  
Dans un premier temps on réalisera un programme pour créer ce fichier. On ne fera pas l'hypothèse que les étudiants sont rentrés par ordre alphabétique et par ordre de filière. On pourra soit créer un fichier vide, soit créer un fichier avec un enregistrement unique.  
Dans un second temps un deuxième programme devra  
®  charger les informations du fichier dans un tableau,  
®  afficher les informations contenues dans le tableau à l'écran,  
®  trier le tableau dans l'ordre alphabétique des noms des étudiants et éventuellement de leurs prénoms,  
®  rechercher un étudiant par son nom et son prénom et afficher sa note d'anglais,  
®  insérer un nouvel étudiant dans le tableau,  
®  supprimer un étudiant dans le tableau,  
®  calculer la moyenne des notes d'anglais,  
®  stocker le tableau trié dans un fichier, éventuellement différent que celui chargé précédemment.  
Pour réaliser ce tri on utilisera la technique du tri bulle sur le tableau. Cet algorithme de tri peut se décrire ainsi :  
Hypo = le tableau n'était pas totalement trié  
Tant que le tableau n'est pas totalement trié  
Faire hypo = le tableau était totalement trié (sauf information contradictoire à venir)  
Aller en début de tableau (la ligne courante est la première ligne du tableau)  
tant que l'on est pas en fin de tableau  
(la ligne courante est la dernière du tableau)  
faire  
si la ligne suivante doit précéder la ligne courante  
faire   la permutation des deux lignes  
                                                              hypo= le tableau n'était pas totalement trié  
fin faire  
la ligne suivante devient la ligne courante fin faire  
Fin faire  
 
Troisième programme à réaliser : on supposera que le nombre d'étudiants est trop grand pour être stocké dans un tableau. Il faudra dont n'utiliser que le fichier. Ce programme devra éviter de faire des tris.  
Travail demande :  
                    ®  définition des jeux de tests. On n'oubliera pas les situations suivantes :  
                    - T1 : le fichier à charger est vide,  
                    - T2 : le fichier à stocker est vide,  
                    - T3 : l'étudiant recherché n'est pas dans le tableau, etc ...  
                    ®  réalisation des différents programmes,  
                    ®  vérification du logiciel sur les jeux de test.  
 
 
 
Voila ce que j'ai fait  
 
program Creation_de_fichier;  
                    type personne=record  
                         nom:string[20];  
                         prenom:string[20];  
                         filiere:string[2];  
                         note_anglais:string[5];  
                         end;  
                    var repertoire:file of personne;  
                        individuersonne;  
                    begin  
                         assign(repertoire,'h:\etu.dat';  
                         rewrite(repertoire);  
                         writeln('Entrer les donnees puis taper fin pour terminer';  
                         with individu do begin  
                              repeat  
                     write('nom :';readln(nom);  
                     write('prenom readln(prenom);  
                     write('filiere readln(filiere);  
                     write('note anglais:';readln(note_anglais);  
                                    if length(nom)>=0 then  
                     write(repertoire,individu);  
                                    until nom='fin';  
                                    end;  
                         close(repertoire);  
                    end.

Reply

Marsh Posté le 21-02-2001 à 13:35:31   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed