Pkoi ça marche po ? - Delphi/Pascal - Programmation
Marsh Posté le 12-12-2004 à 17:41:16
n est un real, et comme il le dit il veut un ordinal (càd un entier, une énumération, ou autre type similaire)
Marsh Posté le 12-12-2004 à 18:44:34
antp a écrit : n est un real, et comme il le dit il veut un ordinal (càd un entier, une énumération, ou autre type similaire) |
ok merci
sinon jsuis bloqué là aussi
le sujet c'est : effectuer des répétitions du traitement suivant : lire un triplet de données, deux nombres a et b et un opérateur op ('+' ou '*'); calculer suivant le cas a+b ou a*b,
- soit en mode conversationnel, une réponse négative de l'utilisateur arrêtant les répétitions.
- soit en signalant l'arrêt des répétitions par la saisie d'une "sentinelle" (p.ex 'z' au lieu d'un opérateur).
program exo3;
var a, b:integer;
var op, r:char;
begin
r:=o;
while r:=o do
begin
writeln('donne deux nombres');
readln(a);
readln(b);
writeln('donne un opérateur');
readln(op);
if op=+ then writeln('la somme de ces deux nombres est',a+b)
else writeln('le produit de ces deux nombres est',a*b);
writeln('tapez o pour continuer et n pour arrêter');
readln(r);
end;
end.
Marsh Posté le 12-12-2004 à 22:02:37
Ça sert à rien d'upper si rapidement
Et c'est quoi la question ? Faire le boulot à ta place ?
Marsh Posté le 05-01-2005 à 23:45:05
essai de faire if op = '+' then ...
parce que il me semble que avec un readln tu rentre un char ou string ou integer ou real...^^
Marsh Posté le 06-01-2005 à 23:12:06
en gros t entrain de te votré avec integer, real....
va faire un tour sur delphifr.com et cherche avant de poser une question. toutes les réponse sont dans l'aide!
Marsh Posté le 06-01-2005 à 23:26:09
Tu pourrais faire un effort d'écriture ? Il ne faut pas tomber dans le SMS-style
Marsh Posté le 12-12-2004 à 16:58:33
J'essaie de programmer l'alogorithme d'Heron :
program exo2;
var n, x, i, u0, U1:real;
begin
writeln('donne la précision avec laquelle tu veux calculer ta racine carrée.');
readln(n);
writeln('quel est le nombre dont tu cherches la racine carrée ?');
readln(x);
writeln('donne la valeur de départ pour l''algorithme ?');
readln(u0);
for i:=1 to n do
begin
U1:=(1/2)*(U0+(x/U0));
U0:=U1;
writeln('la racine carrée approximative de',x,'est',U1);
end;
readln
end.
mais le probleme c'est qu'il me met cette erreur quand je veux compiler :
10 / 5 exo2b.pas
Error: Ordinal expression expected
Message édité par Baruckello le 12-12-2004 à 19:16:12