[Pascal] Calcul somme entier binaire

Résolu
Slut

s'il vous plait j'ai un exercice que j'ai pas pu resoudre est ce que quelqun peut m'aider
ex: ecrireun programme en pascal qui permet de calculer la somme de deux entiers binaire de troi chiffres
sachant que en binaire 1 +1=10 et 1+1+1=10+1=11
Configuration: Windows XP
Internet Explorer 6.0

6 réponses

  1. c'est facile

    program somme;
    uses wincrt;
    var
    a,b, s: integer;
    begin
    s:=a+b;
    write('la somme est= ',s);
    end.
    10
    1. Beginer
      0
  2. s'il vous plais j'ais besoin d'un programme qui permet de calculer la somme de deux entiers c'est facile?
    0
    1. slut, est ce que tu peux me donner plus de détailles sur ce que tu veux
      0
      1. je veux un programme d'une calculatrice scientfique avec système numérique svp pour étudien 2émmé année
        0
        1. je ne connais pas le pacal mais si tu pèeux faire une boucle et un if dedans c'est fait non?

          premiere etape separer les 2 nombre dans 2 tableaux, ensuite tant que tu n'est pas arrivé au bout des tableau tu continues a faire : tab3[i] = tab1[i]+tab2[i] + retenue, ensuite une petite condition de if tab3[i] = 0 ou 1 retenue =0 , if tab3[i]=2 , retenue=1 et tab3[i] = 1 , if tab3[i]= 3 , tab3[i]=1 et retenue=1.

          faut juste gerer les risque de OutOfBoundExceptions :)

          je me demande meme s'il n'y a pas moyen de caster les strings que tu rentres en binaire...? ca serait plus facile.

          cherche sur google l'algo doit y etre :)
          1
          1. hi terro3
            can you give me your opinion about this solution.
            uses wincrt;
            var
            A,B,a1,a2,a3,b1,b2,b3,Ad,Bd,Rd,r1,r2,r3,r4: integer;
            begin
            repeat
            write('donner A= ');
            readln(A);
            until A in [100,101,110,111];
            repeat
            write('donner B= ');
            readln( B );

            until B in [100,101,110,111];
            {--- decodage ---}
            a3:=A div 100;
            a2:=A mod 100 div 10 ;
            a1:= A mod 10;
            b3:=B div 100;
            b2:=B mod 100 div 10 ;
            b1:= B mod 10;

            Ad:= a3*4+a2*2+a1*1;
            Bd:= b3*4+b2*2+b1*1;
            Rd:=Ad+Bd;
            {--- codage ---}
            r4:=Rd mod 2;
            r3:=(Rd div 2) mod 2;
            r2:= (Rd div 4) mod 2;
            r1:=(Rd div 8)mod 2;

            writeln(A);
            writeln(B);
            writeln(Ad);
            writeln(Bd);
            writeln(Rd);
            write('Resultat de l''addition binaaire = ',r1,r2,r3,r4);
            end.

            thank you very much
            0