la somme de 2 nombre binaire

Signaler
Messages postés
4
Date d'inscription
dimanche 9 mai 2010
Statut
Membre
Dernière intervention
17 octobre 2012
-
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
-
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.
A voir également:

2 réponses

Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
23
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));

}

}
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
23
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();

}