Erreur dans l'execution

Poster un nouveau sujet   Répondre au sujet

Voir le sujet précédent Voir le sujet suivant Aller en bas

Erreur dans l'execution

Message par Mondher le Lun 8 Oct - 20:38

program application;
uses wincrt;
type
livre = record
aut : string ;
an : integer ;
tit : string ;
dom : string ;
pag : integer ;
end;
livr = file of livre ;
var
f : livr ; l:livre ; n : integer ;
procedure remplir ( var f :livr; l:livre; var n : integer ) ;
var
i: integer ;
begin
repeat
writeln ( ' n = ' ) ;
readln (n) ;
until ( n >= 2 ) and ( n < 50 ) ;
rewrite(f);
for i:= 1 to n do
begin
with l do
begin
writeln ('aut = ' ) ;
readln (aut);
writeln ('an = ') ;
readln (an);
writeln ('tit = ');
readln (tit);
writeln (' dom = ') ;
readln (dom);
writeln ('pag = ');
readln(pag);
end;
write(f,l);
end;
end;
procedure affiche (var f : livr ; l :livre; n :integer ) ;
var
i,a,min:integer;
begin
reset (f) ;
read(f,l);
min:= l.an ;
while not eof do
begin
read(f,l);
a:=l.an;
if min > a then
min := a;
end;
writeln(min);
end;
begin
assign (f,'C:\livres.dat');
remplir (f,l,n) ;
affiche (f,l,n);
end.

Mondher

Messages : 57
Points : 8406
Réputation : 0
Date d'inscription : 24/09/2012
Age : 22
Localisation : Tunisie

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Erreur dans l'execution

Message par haiethem le Lun 8 Oct - 23:19

Salem Mondher.

L'erreur est dans la procédure affiche : (while not eof do)


tu dois faire : while not eof (f) do


_________________
=================================
Haiethem Elguediri
Lycée Secondaire Mareth
+21652084191
+21652906038
+21631139805
+21675321050
haiethem@gmail.com
www.haiethem.tk
avatar
haiethem

Messages : 414
Points : 13858
Réputation : 3
Date d'inscription : 08/11/2010
Age : 40

Voir le profil de l'utilisateur http://www.haiethem.tk

Revenir en haut Aller en bas

Re: Erreur dans l'execution

Message par haiethem le Lun 8 Oct - 23:22

voici ton programme (avec une petite amélioration) :

procedure remplir ( var f :livr; l:livre; var n : integer ) ;
var
i: integer ;
begin
writeln('REMPLIR');
repeat
writeln ( ' n = ' ) ;
readln (n) ;
until ( n >= 2 ) and ( n < 50 ) ;
rewrite(f);
for i:= 1 to n do
begin
with l do
begin
writeln ('aut = ' ) ;
readln (aut);
writeln ('an = ') ;
readln (an);
writeln ('tit = ');
readln (tit);
writeln (' dom = ') ;
readln (dom);
writeln ('pag = ');
readln(pag);
end;
write(f,l);
end;
close(f);
end;

procedure affiche (var f : livr ) ;
var
min : livre;
a:integer;
begin
writeln('AFFICHE');
reset (f) ;
read(f,l);
min:= l ;
while not eof (f) do
begin
read(f,l);
a:=l.an;
if min.an > l.an then
min := l;
end;
writeln('auteur : ',min.aut,' année : ',min.an, ' *** ');
close(f);
end;
begin
assign (f,'C:\bac2013\livres.dat');
remplir (f,l,n) ;
affiche (f);
end.

_________________
=================================
Haiethem Elguediri
Lycée Secondaire Mareth
+21652084191
+21652906038
+21631139805
+21675321050
haiethem@gmail.com
www.haiethem.tk
avatar
haiethem

Messages : 414
Points : 13858
Réputation : 3
Date d'inscription : 08/11/2010
Age : 40

Voir le profil de l'utilisateur http://www.haiethem.tk

Revenir en haut Aller en bas

Re: Erreur dans l'execution

Message par Mondher le Mar 9 Oct - 12:06

Salem,
Merci Monsieur .
aussi il faut ke jajoute dmodifications dans la procedure affiche
procedure affiche (var f : livr ; l :livre; n :integer ) ;
var
i,a,min:integer; k:string;
begin
reset (f) ;
read(f,l);
min:= l.an ;
while not eof(f) do
begin
read(f,l);
a:=l.an;
if min > a then
min := a; k:= l.aut;
end;
writeln(k);
end;

Mondher

Messages : 57
Points : 8406
Réputation : 0
Date d'inscription : 24/09/2012
Age : 22
Localisation : Tunisie

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Erreur dans l'execution

Message par haiethem le Jeu 11 Oct - 11:55

Noublie pas de fermer f à la fin de la procédure

_________________
=================================
Haiethem Elguediri
Lycée Secondaire Mareth
+21652084191
+21652906038
+21631139805
+21675321050
haiethem@gmail.com
www.haiethem.tk
avatar
haiethem

Messages : 414
Points : 13858
Réputation : 3
Date d'inscription : 08/11/2010
Age : 40

Voir le profil de l'utilisateur http://www.haiethem.tk

Revenir en haut Aller en bas

Re: Erreur dans l'execution

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous pouvez répondre aux sujets dans ce forum