Salut,
J'ai besoin d'aide pour construire un programme.
Voici l'énoncé :
Et merci.construire un programme d'addition de deux nombres binaires
exemple: a=1101 et b=1010 , a+b=10111.
Salut,
J'ai besoin d'aide pour construire un programme.
Voici l'énoncé :
Et merci.construire un programme d'addition de deux nombres binaires
exemple: a=1101 et b=1010 , a+b=10111.
Bonjour et bienvenue !
Peux-tu montrer ce que tu as déjà fait et expliquer quels problèmes tu rencontres ?Envoyé par demha
Règles du forum
Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
Mes tutoriels et sources Pascal
Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]
Salut,
est ce que tu sais faire des addition en binaire?
C'est les règles qu'en décimale :
On commence à additionner les bits de droite, on peut avoir des retenues lorsque la somme de deux bits dépasse la valeur de l'unité la plus grande (c-a-d 1), cette retenue est reportée sur le bit de poids plus fort suivant.
Par exemple :
> 0 1 1 0 1
+ 0 1 1 1 0
- - - - - -
= 1 1 0 1 1
Pour ton programme je crois qu'il va faloir que tu réflécisses sur comment coder ces bits.
Le plus symple (peut-etre) ce de créer des Tableaux de CARDINAL. ou des chaines de caractères.
Bien démarrer c'est :
voici un programe ( sans mise forme) qui aditionne, soustrait,multiplie deux entiers et les traduit en Binaire sur 32 bits.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 program bin_convert; uses crt; Var NombreB,Ch1,Ch2,Ch3 : LongInt; Sg,Er :Integer; Op :Char; {=========================================================================} procedure Bin(Binair:longint); (* Décimal vers binaire *) var c,i :LongInt; co,ii :Byte; begin c:= binair; for ii := 32 downto 1 do begin i:=ii; i :=(c*2) shr i and 1; write (i); NombreB := NombreB + i; end; end; {=========================================================================} {La lecture Binaire se fait de la droite vers la gauche} {Programe Principal} begin clrscr; writeln ('entrez le premier chiffre : '); ReadLn (Ch1); writeln ('entrez le Second chiffre : '); ReadLn (Ch2); ClrScr; WriteLn ('Entrez l''oprateur (+ - * ) :'); ReadLn (Op); Case Op of '+':Ch3 :=Ch1+Ch2; '-':Ch3 :=Ch1-Ch2; '*':Ch3 :=Ch1*Ch2; End ; ClrScr; NombreB := Ch3; WriteLn ('Le rsultat Binaire de ',Ch1, op, Ch2 ,'est : ') ; WriteLn; Bin(NombreB); readln; End.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager