Pb affichage pascal

Résolu/Fermé
rabiaa - 11 janv. 2012 à 20:23
 rabiaa - 11 janv. 2012 à 21:10
Bonjour,



mon programme lit un reel et essaye de l'afficher mais sur l'ecran par exemlpe j'ai saisi 12
à laffichage j'ai 1,200000000000000000000000000000000 et si je saisi par exemple 12,5 il signale erreur et quitte la fenetre d'éxecution.Svp aidez moiMerci
A voir également:

2 réponses

KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
11 janv. 2012 à 20:35
Montre nous ton code pour voir...
0
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
Modifié par [Dal] le 11/01/2012 à 20:36
Salut rabiaa,

Sans ton code, on va avoir du mal :-)

Et si tu tapes 12.5 (avec un point, pas une virgule), cela donne quoi ?


Dal
0
salam
meme si je tape 12.5 le meme pb
Voici mon code:
program lecture;
uses wincrt;
var
c:array[1..5] of real;
s:array[1..5] of real;
i:integer;
Begin
for i:=1 to 10 do
begin
writeln('donnez la note de controle de l"éleve',i);
readln(c[i]);
writeln(c[i]);
writeln('donnez la note de synthese de l"éleve',i);
readln(S[i]);
End;

writeln;
write('Fin de programme. Appuyez sur Entree');
readln;
End.
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015 > rabiaa
11 janv. 2012 à 20:42
Ecris plutôt writeln(c[i]:0:2);
0
rabiaa > rabiaa
11 janv. 2012 à 20:52
Mon frere vraiment je comprends pas c'est quoi le probleme poutquoi cette erreur
0
rabiaa > rabiaa
11 janv. 2012 à 20:53
encore pourquoi si je tape 12,5 l'execution est interrompue
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015 > rabiaa
11 janv. 2012 à 20:55
Ce n'est pas une erreur, les nombres réels sont affichés en notation scientifique.
Normalement tu as 1.200000000000000E+001
Si tu écris writeln(c[i]:0:2) comme j'ai mis plus haut, tu auras une valeur arrondi à deux chiffres après la virgule, c'est à dire 12.00
0