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 :

changement de base d'un nombre


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 51
    Par défaut changement de base d'un nombre
    Je cherche le moyen de transformer un nombre en base 100 (0-9) en base 60 pour manipuler un affichage de compteur.

    Est ce possible ?

    Je sais que je vous donne peu d'element donc si vous avez une idée de piste je suis preneur !

    Merci a tous

  2. #2
    Expert confirmé
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 100
    Par défaut
    Salut,

    les conversions de base sont des algorithmes connus, tu peux les trouver facilement sur le Net. L'idée est la suivante :
    1. On déclare une liste (ou un tableau) pour récupérer des restes de division ;
    2. On divise le nombre par la base voulue et on stocke le reste ;
    3. On remplace le nombre par le quotient de la division qu'on vient de faire, et on recommence ;
    4. Pour obtenir le résultat, concaténer les restes de la liste en partant de la fin.

    Note, si un jour tu as besoin de convertir vers une base inférieure ou égale à 36 (typiquement la base hexa), la méthode toString des nombres, en JavaScript, te permet de faire ça : Edit : Je dois pouvoir retrouver dans mes dossiers un vieux bout de code qui fait ça, si jamais tu sèches
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 51
    Par défaut
    Merci de tes info je vais me pencher dessus ;p

    Ya ds trucs que tu ne sache pas faire ??

  4. #4
    Expert confirmé
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 100
    Par défaut
    Non.
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Pas besoin d'algorithme, JavaScript sait faire ça en natif

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var nb = 7;
    alert(nb.toString(6));
    PS :
    transformer un nombre en base 100 (0-9)
    En base 100
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 51
    Par défaut
    voila a qui j'arrive ! Ca fontionne bien avec l'affichage et tout. Pourtant je pense qu'il y a moyen d'avoir un code disons un peu plus propre. Je debute en javas donc un peu d'indulgence ;p

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
     
     document.obj1=120; /*pour le test*/
      var copieDuNombre = document.obj1;
      var premiernum1 = [];
      var minute; 
      while (copieDuNombre > 0) {
       if (Math.floor(copieDuNombre) > 59)
        {
        minute = Math.floor(copieDuNombre / 60);
        copieDuNombre = copieDuNombre - (minute * 60);
          if (minute == 1) 
            {
            if (copieDuNombre < 10) 
              {      
              premiernum1.unshift(copieDuNombre % 10);
              premiernum1.unshift(0);
              copieDuNombre = Math.floor(copieDuNombre / 10);
              }
            }      
       }
       else
        {
        premiernum1.unshift(copieDuNombre % 10);
        copieDuNombre = Math.floor(copieDuNombre / 10);
        }   
        if ((copieDuNombre == 0)&&(minute != null)) {premiernum1.unshift(minute); minute = 0;}     
      } 
     
      var longueur = premiernum1.length;
     
     
      if (longueur == 3) {
      document.heur11 = 'images/compteur/'+premiernum1[0]+'.jpg';
      document.heur12 = 'images/compteur/'+premiernum1[1]+'.jpg';
      document.heur13 = 'images/compteur/'+premiernum1[2]+'.jpg';
      document.heur11.src = 'images/compteur/'+premiernum1[0]+'.jpg';
      document.heur12.src = 'images/compteur/'+premiernum1[1]+'.jpg';
      document.heur13.src = 'images/compteur/'+premiernum1[2]+'.jpg';
      }
      else if (longueur == 2)
      {
      document.heur11 = 'images/compteur/0.jpg';
      document.heur12 = 'images/compteur/'+premiernum1[0]+'.jpg';
      document.heur13 = 'images/compteur/'+premiernum1[1]+'.jpg';
      document.heur11.src = 'images/compteur/0.jpg';
      document.heur12.src = 'images/compteur/'+premiernum1[0]+'.jpg';
      document.heur13.src = 'images/compteur/'+premiernum1[1]+'.jpg';
      }
      else if (longueur == 1)
      {
      document.heur11 = 'images/compteur/0.jpg';
      document.heur12 = 'images/compteur/0.jpg';
      document.heur13 = 'images/compteur/'+premiernum1[0]+'.jpg';
      document.heur11.src = 'images/compteur/0.jpg';
      document.heur12.src = 'images/compteur/0.jpg';
      document.heur13.src = 'images/compteur/'+premiernum1[0]+'.jpg';  
      }
      else
      {
      document.heur11 = 'images/compteur/0.jpg';
      document.heur12 = 'images/compteur/0.jpg';
      document.heur13 = 'images/compteur/0.jpg';
      document.heur11.src = 'images/compteur/0.jpg';
      document.heur12.src = 'images/compteur/0.jpg';
      document.heur13.src = 'images/compteur/0.jpg'; 
      }
    Pour tester il faut 10 images de 0 a 9 en jpg.

Discussions similaires

  1. Changement de base d'un nombre entier
    Par Romanouch dans le forum Téléchargez
    Réponses: 1
    Dernier message: 24/11/2013, 16h18
  2. Réponses: 2
    Dernier message: 29/11/2006, 18h52
  3. changement de base de donnée
    Par Pitou5464 dans le forum Access
    Réponses: 3
    Dernier message: 08/08/2006, 14h37
  4. Changement de base...enfin je crois....
    Par Eric Boisvert dans le forum Algorithmes et structures de données
    Réponses: 22
    Dernier message: 28/09/2005, 21h11
  5. [VB6] changement de base....
    Par white angel dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 18/04/2004, 17h19

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