Multiplication russe en pascal

Bonjour
J'ai besoin d'un coup de main en programmation en Pascal. je dois réaliser le programme permettant de faire des multiplications russes.
voilà le principe:
produit de 2 nbres entiers non nuls de cette facon
XxY
7 x 9 X est impair
6 x 9 + 9 X est pair
3 x 18 + 9 X est impair
2 x 18 + 9 + 18 ne contient plus que des opérations réalisables à partir d'une table de 2 et additions
toujours prendre X<Y

Merci d'avance pour vos réponses

Samuel

5 réponses

  1. program mslave;
    var truc:longint;

    function mult(x,y:longint):longint;
    var rep:longint;
    begin
    if x>y then
    begin
    rep:=x;
    x:=y;
    y:=rep;
    rep:=0;
    end;
    rep:=0;
    while (x>=1) do
    begin

    rep:=rep + (y * (x mod 2));
    x:=x div 2;
    y:=y*2;

    end;
    mult:=rep;
    end;

    begin

    writeln(mult(143,117));

    end.
    1. Bonjour

      Tiens je pensai que le but du forum était d'aider...

      Je me suis sûrement trompé... dommage :o(

      @lpf
      1. Tu peux aider sans faire ta pub perso !!
        Si tu as la réponse sur ton site tu fais un copier/coller. Sinon ton site perso il doit rester dans ton profil point bar !!!!
        1. encore faut-il avoir remplit le profil !
        2. @Angel25Bonjour

          Encore faudrait-il le pouvoir !!! :o(

          @lpf
      2. Demat dit, Dinheru

        OK

        Ce n'est pas de la pub perso car cela ne me rapporte strictement rien ;o)

        Ma philosophie (et mon job) est d'aider les autres...

        Ken bremaik, a kalon.