Javascool, adition chiffre binaire demande d'aide
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

Javascool, adition chiffre binaire demande d'aide



  1. #1
    skypebedos

    Javascool, adition chiffre binaire demande d'aide


    ------

    Bonjour,
    cela fait 3 jours que je me casse la tete avec mon programme mais je n'arrive a rien.
    Donc le programme est censé additionner des chiffre binaire et en sortie nous obtenons du binaire.
    Or je n'arrive pas a obtenir le binaire en sortie, je ne sais pas ce qu'il cloche peut être un truc au niveaux de tableau. J'ai tout essayé réecris le programme d'une autre façon mais rien n'y fait.
    Voila mon code
    Code:
    void main() {
       int n = readInt("Entrez le nombre de chiffre de votre premier nombre binaire");
       int[] binaire1 = new int[n];
       println("Entrez les chiffres de votre nombre binaire, de droite à gauche");
       for (int i =0; i < n; i ++) {
          binaire1[i] = readInt("Chiffre " + (i +1));
       }
       int p = readInt("Entrez le nombre de chiffre de votre deuxième nombre binaire");
       int[] binaire2 = new int[p];
       println("Entrez les chiffres de votre nombre binaire, de droite a gauche");
       for (int i =0; i < p; i ++) {
          binaire2[i] = readInt("Chiffre " + (i +1));
       }
       int i = 0;
       int r = 0;
       if (n < p) {
          while (i < n) {
             if (binaire1[i] + binaire2[i] == 2);
             {
                binaire2[i] = r;
                r =1;
             }
             if (binaire1[i] + binaire2[i] == 3);
             {
                binaire2[i] = r + 1;
                r = 1;
             }
             i ++;
          }
          binaire2[n -1] = binaire2[n -1] + r;
       }
       //fin premier if  if (n > p) {
        while (i < p) {
          if (binaire1[i] + binaire2[i] < 2);
          {
             binaire1[i] = binaire1[i] + binaire2[i] + r;
             r = 0;
          }
          if (binaire1[i] + binaire2[i] == 2);
          {
             binaire1[i] = r;
             r = 1;
          }
          if (binaire1[i] + binaire2[i] == 3);
          {
             binaire1[i] = r + 1;
             r = 1;
          }
          //ajout du i++ pour que la boucle while  ne tourne pas à l'infini
           i ++;
       }
       binaire1[p - 1] = binaire1[p - 1] + r;
       // fin deuxieme if  if (n == p) {
        while (i < p) {
          if (binaire1[i] + binaire2[i] < 2);
          {
             binaire1[i] = (binaire1[i] + binaire2[i]) + r;
             r = 0;
          }
          if (binaire1[i] + binaire2[i] == 2);
          {
             binaire1[i] = r;
             r = 1;
          }
          if (binaire1[i] + binaire2[i] == 3);
          {
             binaire1[i] = r + 1;
             r = 1;
          }
          i ++;
       }
       println("la somme est: ");
       if (n >= p) {
          for (int j = 0; j < n; j ++) {
             println(binaire1[j]);
          }
       }
       else
       {
          for (int j = 0; j < n; j ++) {
             println(binaire2[j]);
          }   	
       }
     
    }
    Et l'éxécution
    Entrez les chiffres de votre nombre binaire, de droite à gauche
    Entrez les chiffres de votre nombre binaire, de droite a gauche
    la somme est:
    2
    2
    2
    2



    J'espère que quelqu'un pourras me venir en aide car c'est ma seule note dans la matière du trimestre ( isn terminale S). Je me suis creusé la tête je ne trouve rien.
    Merci d'avance pour votre aide

    -----
    Dernière modification par skypebedos ; 06/11/2014 à 23h05.

  2. #2
    Chanur

    Re : Javascool, adition chiffre binaire demande d'aide

    Bonjour,

    Tu as mis des points-virgules à la fin de chaque if.
    Du coup,
    si le test est vrai, il exécute une instruction vide, puis ce qu'il y a entre les accolades
    si le test est faux, il n'exécute pas l'instruction vide, puis il exécute ce qu'il y a entre les accolades.

    Ça donne le même résultat que si tes tests étaient toujours vrais.

    D'autre part tu alloue binaire1 à n entiers et tu le balaie de 0 à p-1 (de 0 à n-1 d'abord, puis de n à p-1) .
    Disons qu'on espère que tu n'essaieras jamais le cas où p > n

    Et je ne comprends rien à ton algorithme.
    Tu commence par tester binaire1[i]+binaire2[i]
    ensuite tu modifie binaire1[i] en lui ajoutant binaire2[i]
    ensuite tu reteste binaire1[i]+binaire2[i] (qui est donc additionné deux fois ...)

    Quel intérêt de te servir de tes tableaux d'entrée pour y mettre le résultat ?
    C'est pas très grave de dépenser une demi-douzaine d'octets, tu sais ...

    A +
    Ce qui se conçoit bien s'énonce clairement ; et les mots pour le dire arrivent aisément.

  3. #3
    JeSuisConscient

    Re : Javascool, adition chiffre binaire demande d'aide

    euh cela serait pas plus logique plutôt de stocker des Binary ?
    tu dois faire une addition binaire allez je vais être gentil
    va voir ici http://www.allaboutcircuits.com/work.../bin_circ.html
    Nom : 01478x02.png
Affichages : 46
Taille : 1,9 Ko

    donc tu as retenue = A et B
    et le résultat = A XOR B

    apres il te suffira de gérer la suite ...
    Dernière modification par JeSuisConscient ; 07/11/2014 à 08h52.

  4. #4
    JeSuisConscient

    Re : Javascool, adition chiffre binaire demande d'aide

    et la aussi il y a un chapitre concernant les additions bit a bit
    www.liafa.jussieu.fr/~carton/Enseignement/Architecture/archi.pdf

  5. A voir en vidéo sur Futura

Discussions similaires

  1. adition d'acide chlorhydrique sur un aldèhyde
    Par chemsse dans le forum Chimie
    Réponses: 2
    Dernier message: 01/10/2011, 17h04
  2. SVP la division binaire à l'aide du PIC??
    Par invite93489408 dans le forum Électronique
    Réponses: 15
    Dernier message: 26/02/2011, 14h18
  3. adition et soustraction sur plusieurs bases
    Par invite1ab5b8ac dans le forum Mathématiques du collège et du lycée
    Réponses: 7
    Dernier message: 28/10/2010, 10h16
  4. Nombre de suite possible de p chiffre sur n chiffre
    Par Cuthalion dans le forum Mathématiques du collège et du lycée
    Réponses: 9
    Dernier message: 07/01/2010, 19h49
  5. Adition d'images et boutique galiléo
    Par hammadi dans le forum Matériel astronomique et photos d'amateurs
    Réponses: 3
    Dernier message: 04/01/2007, 07h45