Programer des fichiers en pascal
Résolu/Fermé
A voir également:
- Programer des fichiers en pascal
- Turbo pascal download - Télécharger - Édition & Programmation
- Renommer des fichiers en masse - Guide
- My pascal - Télécharger - Édition & Programmation
- Wetransfer gratuit fichiers lourd - Guide
- Fichiers epub - Guide
1 réponse
KX
Messages postés
16760
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
6 juin 2008 à 21:47
6 juin 2008 à 21:47
Plusieurs remarques :
function recette :
Tu utilise à la première ligne, "read(rep)", mais tu utilise "if patient", vire le "patient" et utilise "rep" (ou l'inverse)
function recherche :
Tu essaye de faire "if(num=c.num)..." utilise un "var d:malade" et fais "if(d.num=c.num)..."
De plus tu fais "rdv=c.rdv.jour.mois.annee" ce qui est bien sûr incompréhensible pour l'ordi, fais plutôt "(d.rdv.jour=c.rdv.jour)and(d.rdv.mois=c.rdv.mois)and(d.rdv.annee=c.rdv.annee)"
programme principal :
Tu écris "write(' le diagnostique de ',nom,' est: ',c.diagnostique); mais "nom" n'existe pas, remplace le par c.nom
De plus ta boucle "rep:='o'; while rep='n' do" n'est jamais vérifiée, elle est fausse dès l'initialisation...
Après ces quelques rectifications, le programme marche, mais quant à savoir s'il fait ce qu'on veut de lui.
PS:
Je sais que la méthode d'apprentissage est différente d'une fac à l'autre, mais il vaudrait peut-être mieux que tu utilises des procedure avec des variables à transporter (exemple function recherche(var f:file of malade;var c:malade):boolean) plutôt que d'utiliser des variables globales, car c'est la principale source de tes erreurs.
De plus pour corriger toi même tes erreurs il te faudrait un programme comme dev-pascal qui possède un débugeur assez performant, ça aide grandement à identifier où sont les erreurs de language et les programmes sont sensiblement les mêmes...
function recette :
Tu utilise à la première ligne, "read(rep)", mais tu utilise "if patient", vire le "patient" et utilise "rep" (ou l'inverse)
function recherche :
Tu essaye de faire "if(num=c.num)..." utilise un "var d:malade" et fais "if(d.num=c.num)..."
De plus tu fais "rdv=c.rdv.jour.mois.annee" ce qui est bien sûr incompréhensible pour l'ordi, fais plutôt "(d.rdv.jour=c.rdv.jour)and(d.rdv.mois=c.rdv.mois)and(d.rdv.annee=c.rdv.annee)"
programme principal :
Tu écris "write(' le diagnostique de ',nom,' est: ',c.diagnostique); mais "nom" n'existe pas, remplace le par c.nom
De plus ta boucle "rep:='o'; while rep='n' do" n'est jamais vérifiée, elle est fausse dès l'initialisation...
Après ces quelques rectifications, le programme marche, mais quant à savoir s'il fait ce qu'on veut de lui.
PS:
Je sais que la méthode d'apprentissage est différente d'une fac à l'autre, mais il vaudrait peut-être mieux que tu utilises des procedure avec des variables à transporter (exemple function recherche(var f:file of malade;var c:malade):boolean) plutôt que d'utiliser des variables globales, car c'est la principale source de tes erreurs.
De plus pour corriger toi même tes erreurs il te faudrait un programme comme dev-pascal qui possède un débugeur assez performant, ça aide grandement à identifier où sont les erreurs de language et les programmes sont sensiblement les mêmes...
9 juin 2008 à 15:06
Effectivement, j’ai fais ce que tu ma dis et ça a fonctionné. Malgré quelque imperfection que je vais tenter de régler, il s’exécute globalement plutôt bien. Je tenais à te remercier de m’avoir aider, et d’avoir étais aussi explicite dans tes repenses. (Je dois avouer que je ne m’attendais pas a une repense aussi claire).
Merci encore.