Pascal

Bonjour, à tous
j'ai un question en programmation pascal
qu'est ce s'affiche ce code là si on suppose que la couple (m,n) est (2,7)

function chercher (m,n:integer):integer;
var c, i :integer;
begin
c:=0;
for i:=1 to n do
begin
c:=c+m;
end;
chercher :=c;
end;

S'il vous plaît rendre moi une réponse

5 réponses

  1. salut

    le c rester fixé car la boucle FOR ne touche pas le m mais seulement le n

    donc:

    c:=0+2 ==> c:=2

    si vous voulez que le résultat sera affichée sur le DOS donc :

    print c;
    0
    1. Modérateur
      Remarque : il n'est pas gênant que la boucle for ne modifie pas m.
      La variable c sera tout de même incrémenté de m à chaque tour de boucle, et ce n fois conduisant à un simple calcul de multiplication m*n
      0
  2. merci a votre réponse mais j'essayer a exécuter ce code en logiciel turbo pascal
    mais pas de résultat
    0
    1. Re:

      mais je te met :

      print c;
      ou
      print('valeur de c est',c);

      avez vous l'ajouter a votre code ??
      0
    2. Modérateur
      chercher est une fonction qui renvoie donc un résultat, il n'est pas propre de mettre des instructions d'affichages dans des fonctions. Il est préférable d'utiliser une procédure pour faire l'affichage :

      procedure afficher();
      var c,m,n:integer;
      begin
         write('m : '); readln(m);
         write('n : '); readln(n);
         c:=chercher(m,n);
         writeln('chercher(',m,',',n,')=',c);
      end;
      0
  3. est ce que ce code là affiche 9 ou 14 ou 49
    0
    1. Modérateur
      Il suffit de regarder ton code pour voir le résultat :
      Au départ tu as c=0, m=2, n=7
      Au fur et à mesure que ta boucle progresse, tu augmentes i, et tu auras donc :

      i=1, c=2,  m=2, n=7
      i=2, c=4,  m=2, n=7
      i=3, c=6,  m=2, n=7
      i=4, c=8,  m=2, n=7
      i=5, c=10, m=2, n=7
      i=6, c=12, m=2, n=7
      i=7, c=14, m=2, n=7

      Donc chercher:=c; que l'on peut aussi écrire result:=c; donne donc 14.
      Ce résultat est logique puisque comme je l'ai dit plus haut, ta fonction calcule le produit m*n...
      0
  4. merci a tous les aides ce ça qui je recherche
    merci beaucoup
    0