Turbo Pascal : resultats irreguliers

Fermé
dimi3 Messages postés 269 Date d'inscription mercredi 7 novembre 2007 Statut Membre Dernière intervention 1 avril 2011 - 25 févr. 2008 à 09:01
dimi3 Messages postés 269 Date d'inscription mercredi 7 novembre 2007 Statut Membre Dernière intervention 1 avril 2011 - 25 févr. 2008 à 09:43
Bonjour,
Le petit programme ci-dessous en Turbo Pascal est censé ranger par ordre alphabétique les 6 lettres entrées. Quand on entre les lettres "s d f g h j", le programme les range parfaitement en ordre alphabétique. Quand on entre les lettres "q a w z c f", les lettres ne sortent pas rangées selon l'alphabet. Comment cela s'explique-t-il ?


program alphabet

uses wincrt;

var
tablo : array[1..6] of char;
i : integer ;
j: integer;
x : char;

begin

clrscr ;

{-----entrer-----}

ensemble := '';
i := 1 ;
for i := 1 to 6 do
begin
write('Lettre ',i, ': ');
readln(tablo[i]);
end;
writeln(' ');
writeln('Les lettres proposées sont : ',tablo);
writeln(' ');

{----- ranger-----}

j:=1;

for i:=6 downto i do
begin
for j:=1 to i-1 do
if tablo[j]>tablo[j+1] then
begin
x:=tablo[j+1];
tablo[j+1]:=tablo[j];
tablo[j]:=x;

end;

end;


{-----afficher-----}

writeln('Lettres rangées par ordre alphabétique :');
writeln(' ');
for i := 1 to 6 do
writeln('Lettre ',i,' : ',tablo[i]);

end.

---------
Merci de votre avis
A voir également:

1 réponse

dimi3 Messages postés 269 Date d'inscription mercredi 7 novembre 2007 Statut Membre Dernière intervention 1 avril 2011 20
25 févr. 2008 à 09:43
Du nouveau :

si je fais tourner le programme ci-dessus sous windows, j'obtiens les problèmes décrits dans le message précédent (les lettres ne sont pas toujours rangées par ordre alphabétique). Si je fais tourner le programme sous DOS, le programme range les lettres par ordre alphabétique quelles que soient les lettres choisies. Souhaitant faire tourner mon programme sous windows, comment solutionner le problème ?

merci
0