Programmation pascal

Bonjour,
je suis bloqué sur une procedure
en fait je souhaite mettre en place une bibliothèque de nombre binaire qui se presente sous forme tableau
c-a-d il prend un nombre et convertie en base 2 et l'affiche dans un tableau,
maintenant il faut ecrire une procedure qui va faire cette operation
Configuration: Windows XP
Internet Explorer 6.0

2 réponses

  1. procedure convertion(var t:tab, n:integer)

    var i:integer;

    begin

    i:=1;

    repeat

    t[i]:=n mod 2;
    n:=n div 2;
    i = i+1;

    until(n div 2 = 0 and n mod 2 = 0)

    end;

    g pa testé le code, mai normalement ça marche

    RQ: tab c un type défini au début de prog, c un tableau
    1. Modérateur
      Je m'inspire de la procédure de aymoun888, pour donner un programme que j'ai testé :
      program SansNom;
      
      const Nmax=31; // limite de integer
      
      type tab=array[1..Nmax] of byte;
      
      procedure convertion(var t:tab; n:integer);
      var i:integer;
      begin
      for i:=1 to Nmax do t[i]:=2;
      i:=1;
      repeat
      t[i]:=n mod 2;
      n:=n div 2;
      i:=i+1;
      until( (n div 2=0) and (n mod 2=0));
      end;
      
      procedure Afficher(t:tab);
      var i:integer;
      begin
      for i:=Nmax downto 1 do
          if t[i]<2 then write(t[i]);
      writeln;
      end;
      
      var t:tab;
      begin
      Convertion(t,5);
      Afficher(t);
      write('Fin du programme. Appuyer sur Entree'); readln;
      end.
      --
      La confiance n'exclut pas le contrôle