IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Tableau, entier, caractère faut-il tout convertir ?


Sujet :

JavaScript

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2013
    Messages : 12
    Points : 7
    Points
    7
    Par défaut Tableau, entier, caractère faut-il tout convertir ?
    Bonjour,
    je travaille sur un convertisseur décimal vers hexadécimal.
    Je sais qu'il existe des fonctions toutes faites (toString(16)) mais ce n'est pas le but de cet exercice.
    Mon code fonctionne et me retourne bien un résultat mais seulement en entier.
    Par exemple pour 155 tapé, j'ai comme résultat 911 au lieux de 9B
    Comment puis-je fais pour que cela fonctionne?
    Si tous les entiers étaient convertis en char des conditions if == 10 suffiraient -elle?
    Voici mon code :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <script>
     
    function Dectohex_onClick()
        {
        var valhex = document.getElementById( "valhex" ) ;
        var result = document.getElementById( "result" ) ;
        var dechex = valhex.value ;
        var valt ;
        var tab=[] ;
        var i = 0 ;
        var chiffres = new RegExp("[^0-9]");
        if (chiffres.test(dechex))
        {
        alert("Vous n'avez pas saisi un nombre décimale !");
        document.getElementById("valhex").style.backgroundColor='#F7230C'
        }
        else
        {
        document.getElementById("valhex").style.backgroundColor='#FFFFFF'
        while( dechex >= 1 )
            {
                valt=dechex%16 ;
                tab[i]=valt ;
                dechex=parseInt(dechex/16) ;
                i++ ;
            }  
        }  
        tab.reverse() ;
        result.value = tab.join("")
        }
     
     
    </script>
     
    <label>Valeur décimale</label>
    <input id="valhex" />
    <br>
    <label>Convertis en hexa : </label>
    <input id="result" />
    <br>
    <button onclick="Dectohex_onClick() ;">Convertir en hexa !</button>
    J'ai déjà tenté de prendre une variable a laquelle je donne la valeur A et de faire un for ou un if le reste de la division == 10 de mettre la variable contenant A dans le tableau
    Mais ce n'est pas une réussite car dans ce cas le tableau ne me retourne rien

    Quelle direction dois-je prendre?
    Faudrait-il convertir toute les reste de divisions en caractère pour que mon tableau accepte les caractères?

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 075
    Points : 44 657
    Points
    44 657
    Par défaut
    Bonsoir,
    regardes du coté de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var codeHEXA = '0123456789ABCEF'.split('');
    alert( codeHEXA[11]);

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2013
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Merci pour cette aide, ça fonctionne, il faut que j'essai d'optimiser mon code maintenant pour ne pas avoir des if partout,
    Il est possible comme pour les switch de faire un break sur une boucle en if?

    Je chercherai demain mais au cas ou vous auriez la réponse.. :p

    Merci NoSmoking, c'est exactement ce que je cherchais

    [edit] finalement j'ai mis les différentes valeurs en else if du coup il ne passe pas partout quant il a trouvé

    Merci

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 075
    Points : 44 657
    Points
    44 657
    Par défaut
    Il est possible comme pour les switch de faire un break sur une boucle en if?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    for( i = 0; i < 10; i++){
      if( i == 3){
        break;
      }
      alert('IN boucle : ' +i);
    }
    alert('OUT boucle : ' +i);

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2013
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Je regarde demain

    Merci pour votre précieuse aide

    Bonne soirée

Discussions similaires

  1. Convertir un tableau de caractère en chaine de caractère
    Par Bebuck dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 16/08/2011, 14h27
  2. Réponses: 1
    Dernier message: 25/05/2007, 10h55
  3. Convertir une string en tableau de caractères
    Par alainpeniche dans le forum C++
    Réponses: 4
    Dernier message: 06/01/2007, 20h00
  4. Réponses: 4
    Dernier message: 15/11/2006, 15h14
  5. convertir un tableau de caractère en float
    Par zerocoolyoussef dans le forum C
    Réponses: 3
    Dernier message: 20/03/2006, 22h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo