la somme de 2 nombre binaire

hassnaa66
Messages postés
4
Date d'inscription
dimanche 9 mai 2010
Statut
Membre
Dernière intervention
17 octobre 2012
- 17 oct. 2012 à 13:43
cs_jojolemariole
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
- 17 oct. 2012 à 15:30
Bonjour a tous pouvez vous me répondre a cette question:
je suis débutante et je ne sait pas top en java.
comment je peux écrire un programme en java qui calcule la somme de 2 nombre binaire sachant que
1+1 = 10 ;

merci pour votre aide.

2 réponses

cs_jojolemariole
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
25
17 oct. 2012 à 14:57
Salut,

S'il ne s'agit pas d'un exercice, le plus simple sera le mieux :
public class SommeBinaire {

public static void main(String[] args) {

int a = Integer.parseInt("1", 2);
int b = Integer.parseInt("1", 2);
int c = a + b;
System.out.println(Integer.toBinaryString(c));

}

}
0
cs_jojolemariole
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
25
17 oct. 2012 à 15:30
Ou sinon avec une fonction comme ça :
/**
 * @param a
 *            l'ecriture en base 2 d'un nombre entier
 * @param b
 *            l'ecriture en base 2 d'un nombre entier
 * @return l'ecriture en base 2 de la somme de a et b
 */
public static String sommeBinaire(String a, String b) {

int iA = a.length();
int iB = b.length();

boolean bA, bB, bC, bR = false;

StringBuilder c = new StringBuilder();

while (iA > 0 || iB > 0) {

bA iA > 0 && a.charAt(--iA) '1';
bB iB > 0 && b.charAt(--iB) '1';

bC = bA ^ bB ^ bR;
bR = bA & bB | bA & bR | bB & bR;

c.insert(0, bC ? '1' : '0');

}

if (bR) {
c.insert(0, '1');
}

return c.toString();

}
0