Forum pour les élèves lycéens
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le deal à ne pas rater :
Cartes Pokémon EV6.5 : où trouver le Bundle Lot 6 Boosters Fable ...
Voir le deal

Examen du BAC 2012

Aller en bas

Examen du BAC 2012 Empty Examen du BAC 2012

Message par Invité Lun 15 Oct - 21:19

program devoir_bac_2012;
uses wincrt;
type
chiffrer = record
lettre : char ;
codage : string [6] ;
end;
dev_inf = file of chiffrer ;
var
f : dev_inf; c : chiffrer; g: text ;
procedure remp_texte (var g : text );
var
ch : string;
begin
assign (g,'c:\braille.txt');
rewrite (g);
ch := 'EXAMEN';
write(g,ch);
ch:= 'DU';
append(g);
write(g,ch);
append(g);
ch:= 'BAC';
write(g,ch);
close(g);
end;
procedure remp_code (var f : dev_inf; c : chiffrer);
var
i : char ;
begin
assign (f,'c:\codes_braille.dat');
rewrite(f);
for i:= 'A' to 'Z' do
begin
c.lettre := i ;
case i of
'A': c.codage := '*-----';
'B': c.codage := '**----' ;
'C': c.codage := '*--*--' ;
'D': c.codage := '*--**-' ;
'E': c.codage := '*---*-' ;
'F': c.codage := '**-*--' ;
'G': c.codage := '**-**-' ;
'H': c.codage := '**--*-' ;
'I': c.codage := '-*-*--' ;
'J': c.codage := '-*-**-' ;
'K': c.codage := '*-*---' ;
'L': c.codage := '***---' ;
'M': c.codage := '*-**--' ;
'N': c.codage := '*-***-' ;
'O': c.codage := '*-*-*-' ;
'P': c.codage := '****--' ;
'Q': c.codage := '*****-' ;
'R': c.codage := '***-*-' ;
'S': c.codage := '-***--' ;
'T': c.codage := '-****-' ;
'U': c.codage := '*-*--*' ;
'V': c.codage := '***--*' ;
'W': c.codage := '-*-***' ;
'X': c.codage := '*-**-*' ;
'Y': c.codage := '*-****' ;
'Z': c.codage := '*_*_**' ;
end;
write(f,c);
end;
close(f);
end;
procedure affiche (var f : dev_inf ; var g : text );
var
i : integer ; ch : string ; ch1:string;
begin
assign(g,'c:\braille.txt');
reset(g);
read(g,ch);
assign(f,'c:\codes_braille.dat');
for i:= 1 to length(ch) do
begin
reset(f); read(f,c);
if ch[i] = c.lettre then
ch1 := concat(ch1,c.codage);
while (not ( eof (f) )) and (not ( upcase(ch[i]) = c.lettre )) do
begin
read(f,c);
if upcase(ch[i]) = c.lettre then
ch1 := concat(ch1,c.codage) ;
end;
end;
close(f);
rewrite(g);
write(g,ch1);
close(g);
writeln(ch1);
end;
begin
remp_texte(g);
remp_code(f,c);
affiche(f,g);
end.
salut Monsieur ,
svp kene feme fautes, 9oulli chnoma & comment faire pour les corriger !

Invité
Invité


Revenir en haut Aller en bas

Examen du BAC 2012 Empty Re: Examen du BAC 2012

Message par haiethem Mar 16 Oct - 0:40

Salam Mondher :
Pas d'erreur mais une manquance dans la procédure remp_texte (writeln au lieu de write):
=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
procedure remp_texte (var g : text );
var
ch : string;
begin
assign (g,'c:\braille.txt');
rewrite (g);
ch := 'EXAMEN';
writeln(g,ch);
ch:= 'DU';
append(g);
writeln(g,ch);
append(g);
ch:= 'BAC';
writeln(g,ch);
close(g);
end;
haiethem
haiethem

Messages : 485
Points : 27118
Réputation : 3
Date d'inscription : 08/11/2010
Age : 47

http://www.gdiri.info

Revenir en haut Aller en bas

Examen du BAC 2012 Empty Re: Examen du BAC 2012

Message par haiethem Mar 16 Oct - 0:49

Pour la procédure affiche, il faut afficher le code de chaque mot dans une ligne à part.
Tu dois modifier la procédure affiche.
haiethem
haiethem

Messages : 485
Points : 27118
Réputation : 3
Date d'inscription : 08/11/2010
Age : 47

http://www.gdiri.info

Revenir en haut Aller en bas

Examen du BAC 2012 Empty Re: Examen du BAC 2012

Message par haiethem Mar 16 Oct - 1:08

procedure affiche (var f : dev_inf ; var g : text );
var
i : integer ; ch : string ; ch1:string;
begin
reset(g);
rewrite(g1);
while not eof(g) do
begin
ch1:='';
readln(g,ch);
for i:= 1 to length(ch) do
begin
reset(f); read(f,c);
if ch[i] = c.lettre then
ch1 := concat(ch1,c.codage);
while (not ( eof (f) )) and (not ( upcase(ch[i]) = c.lettre )) do
begin
read(f,c);
if upcase(ch[i]) = c.lettre then
ch1 := concat(ch1,c.codage);
end;
end;
close(f);
writeln(g1,ch1);
end;
close(g);
close(g1);
end;
haiethem
haiethem

Messages : 485
Points : 27118
Réputation : 3
Date d'inscription : 08/11/2010
Age : 47

http://www.gdiri.info

Revenir en haut Aller en bas

Examen du BAC 2012 Empty Re: Examen du BAC 2012

Message par Invité Mar 16 Oct - 12:48

Merci
il faut ajouter aussi
reset(g1);
ch:='';
while not (eof(g1)) do
begin
readln(g1,ch);
writeln(ch);
end;
close(g1);

Invité
Invité


Revenir en haut Aller en bas

Examen du BAC 2012 Empty Re: Examen du BAC 2012

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

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