Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2784 connectés 

 


Dernière réponse
Sujet : Programme en turbo pascal
biscotte 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.

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
biscotte 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.

Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR