SOMME NOMBRE BINAIRE

Messages postés
23
Date d'inscription
lundi 31 décembre 2001
Statut
Membre
Dernière intervention
19 mai 2012
-
Messages postés
28
Date d'inscription
jeudi 15 octobre 2009
Statut
Membre
Dernière intervention
12 décembre 2013
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/52854-somme-nombre-binaire

Messages postés
28
Date d'inscription
jeudi 15 octobre 2009
Statut
Membre
Dernière intervention
12 décembre 2013

@Menuki : C fait :D !!
Messages postés
13
Date d'inscription
lundi 10 octobre 2005
Statut
Membre
Dernière intervention
11 août 2008

Bonjour,

Il n'y aurait pas comme une erreur?
Tu n'oublierais pas la retenue?
Je m'explique : tu rajoutes un 0 dans le résultat si les deux bits sont égaux et un 1 s'ils sont différents.
En effet 0+0 = 0, 0+1=1, 1+0=1.
Mais 1+1 = 10! Ca donne bien 0 mais modulo 2, il faut rajouter la retenue au chiffre suivant.

Reprenons ton exemple :
0000000011101010
+
0000000000011011
----------------------
= 0000000100000101

Et oui, 234 + 27 = 261 et pas 241!

Vérifier ses résultats, c'est la base!
Messages postés
28
Date d'inscription
jeudi 15 octobre 2009
Statut
Membre
Dernière intervention
12 décembre 2013

David, regarde le code suivant est une interface graphique que tu pourrait changer à ta guise ...
Le code est tel que tu entre deux texte et dans la section TexteField il te montre la valeur :
texte1 + texte2 une fois tu clique sur le boutton somme ...
Si tu es intérréssé par ce code je pourrais le modifier de telle façon il suit le code audessus, mais je crois que maintenant tu peux le modifier comme tu veux :D

import java.awt.*;
import java.awt.event.*;
import java.awt.color.*;
import java.awt.font.*;
import java.awt.image.*;

/**
*
* @author scupper
*
*/
public class DefaultInterface extends Frame implements ActionListener {

private final int radix = 32;

TextField tf1=new TextField(radix),
tf2=new TextField(radix),
tf=new TextField(radix);

Button ok = new Button("Sommer ...");
Panel p1,p2;
Canvas c[] = new Canvas[2];

public DefaultInterface(String title){
super(title);


for(int i =0;i<2;i++){
c[i] = new Canvas();
}
p1 = new Panel();
p2 = new Panel();
GridLayout gl1 = new GridLayout(4,1,10,10);
GridLayout gl2 = new GridLayout(1,4,10,0);

p2.setLayout(gl2);
p2.add(c[0]);
p2.add(ok);
p2.add(c[1]);
p1.setLayout(gl1);
p1.add(tf1);
p1.add(tf2);
p1.add(tf);
p1.add(p2);

tf1.setBackground(Color.white);
tf2.setBackground(Color.white);
tf.setBackground(Color.white);
tf.setEditable(false);

add(p1);
ok.addActionListener(this);

}

public static void main(String[] args){
DefaultInterface obj = new DefaultInterface("Testin' ...");
obj.setSize(200, 200);
obj.setVisible(true);
}

@Override
public void actionPerformed(ActionEvent arg0) {
String texte1,texte2;
texte1=tf1.getText();
texte2=tf2.getText();
//Procedure de convertissage et de calcule
tf.setText(texte1+"+"+texte2);
}


}
Messages postés
28
Date d'inscription
jeudi 15 octobre 2009
Statut
Membre
Dernière intervention
12 décembre 2013

je vois , mais tu C ke pour moi l'interface graphique C pas vraiment intérréssant tu pourrait tjrs ou bi1 créer une frame ou bien une applet pour contenir deux TextField pour les deux nombres, une autre région TextFiled pour la somme et un Button de telle façon tu introduit sur le bouton un Listener et puis dans la méthode que tu devrait surchaG, tu introduis les fonctions de cette classe, ce que je trouvais intérréssant dans ce code c'était le fait que je pourrait maintenant faire la somme de nombre sur une longeur indéfini en utilisant le champ "radix", puisque on ne peut pas dépasser un nombre max même si on passe a Long, je sais pas si tu m'as compris mais c'est une classe que je prévoit d'utiliser dans le futur proche :D
Messages postés
23
Date d'inscription
lundi 31 décembre 2001
Statut
Membre
Dernière intervention
19 mai 2012

EN fait tu additionne deux chiffres et je voudrais les changer tu n'as pas fais une interface graphique ou tu peux entrer les chiffres que tu veux?
Afficher les 9 commentaires