Pkoi ça marche po ?

Pkoi ça marche po ? - Delphi/Pascal - Programmation

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
Reply

Marsh Posté le 12-12-2004 à 16:58:33   

Reply

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)


Message édité par antp le 12-12-2004 à 17:42:53

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

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.

Reply

Marsh Posté le 12-12-2004 à 19:58:27    

up

Reply

Marsh Posté le 12-12-2004 à 21:37:59    

:bounce:

Reply

Marsh Posté le 12-12-2004 à 22:02:37    

Ça sert à rien d'upper si rapidement :o
Et c'est quoi la question ? Faire le boulot à ta place ? :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

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...^^

Reply

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!


---------------
qui s'endort avec le cul qui gratte ce réveille avec la mains qui pue!
Reply

Marsh Posté le 06-01-2005 à 23:26:09    

Tu pourrais faire un effort d'écriture ? :o Il ne faut pas tomber dans le SMS-style :p


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed