Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probleme de calcul binaire et affectation

Probleme de calcul binaire et affectation

Sujet résolu
Anonyme
    27 novembre 2011 à 9:06:13

    Bonjours,
    J'ai une fonction qui realise un calcul binaire puis affecte la nouvelle valeur eu tableau t .
    a est un nombre entre 1 et 49.
    La fonction suivante marche elle affiche la bonne valeur .
    function enlever(a) { var b=1<<(a%16);var c=t[a>>4];alert (c-b);}
    


    Maintenant quand j'essai d'affecter ce resultat a un tableau ca ne marche pas
    t[a>>4]=t[a>>4]-1<<(a%16)
    
    • Partager sur Facebook
    • Partager sur Twitter
      27 novembre 2011 à 13:04:56

      "Ca ne marche pas" ? Tu peux être plus précis ?

      Y a-t-il une erreur indiquée dans la console ? (Outils -> Développeur web -> Console d'erreurs sous Firefox) Que contient le tableau t à la fin ? etc.
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        27 novembre 2011 à 18:44:00

        Il n'y a aucune erreur a la fin .
        Normalement Le tableau t est composé de 4 valeurs.

        Dans le cas suivant t[8,0,0,0]
        Si j'ai un a=3 normalement je devrais avoir t [0,0,0,0]mais au lieu de ca j'ai t[8,0,0,0,,,] donc ca rajoute trois champs .

        C'est cette fonction suivante qui ne marche pas :
        t[a>>4]=t[a>>4]-1<<(a%16)
        


        alors que ceci fonctionne
        function enlever(a) { var b=1<<(a%16);var c=t[a>>4];alert (c-b);}
        


        Je n'arrive pas a voir pourquoi je n'arrive pas a modifier mon tableau t .
        • Partager sur Facebook
        • Partager sur Twitter
          27 novembre 2011 à 19:25:02

          Quand je teste t[a>>4]=t[a>>4]-1<<(a%16) avec t=[8,0,0,0] et a=3, j'obtiens [56,0,0,0] et non pas [8,0,0,0,,,].

          En ajoutant une paire de parenthèses autour de 1<<(a%16), j'obtiens bien [0,0,0,0].
          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            27 novembre 2011 à 21:01:07

            C'est une erreur de ma part le code fonctionne .
            Je n'avais pas afficher le alert dans la bonne fonction.

            • Partager sur Facebook
            • Partager sur Twitter

            Probleme de calcul binaire et affectation

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown