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
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
Salut,
les conversions de base sont des algorithmes connus, tu peux les trouver facilement sur le Net. L'idée est la suivante :
- On déclare une liste (ou un tableau) pour récupérer des restes de division ;
- On divise le nombre par la base voulue et on stocke le reste ;
- On remplace le nombre par le quotient de la division qu'on vient de faire, et on recommence ;
- 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
Code : Sélectionner tout - Visualiser dans une fenêtre à part (248).toString(16);![]()
La FAQ JavaScript – Les cours JavaScript
Touche F12 = la console → l’outil indispensable pour développer en JavaScript !
Merci de tes info je vais me pencher dessus ;p
Ya ds trucs que tu ne sache pas faire ??![]()
Non.![]()
La FAQ JavaScript – Les cours JavaScript
Touche F12 = la console → l’outil indispensable pour développer en JavaScript !
Pas besoin d'algorithme, JavaScript sait faire ça en natif
PS :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 var nb = 7; alert(nb.toString(6));
En base 100transformer un nombre en base 100 (0-9)![]()
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 JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum
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
Pour tester il faut 10 images de 0 a 9 en jpg.
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'; }
en javas ?
c'est du javascript ...![]()
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Bovino j'imagine que tu avais compris tout de meme ce que je voulais dire en parlant de base 100. 100 ou 10 pour un non initier c'est la meme chose.
Moi je voulais obtenir une base 60 et plus haut on m'a dis que le tostring ne fonctionner pas pour une base superieur a 36. Ensuite peut on assimiler une base 60 a une base 6? je ne sais pas. En tout cas voici mon code et dites moi ce que vous en pensez !
Merci a tous
si c'est juste en base 60 voici un debut de piste
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 inputval=90 temptime=new Date(0) temptime.setSeconds(inputval) alert(temptime.getMinutes().toString()+','+ temptime.getSeconds()/60*100)
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Je me suis peut etre bien embeter pour rien alors ! lol
en attendant que je regarde ce que tu viens de me mettre j'ai une question sur la suite de mon script.
Je suis moyen sur pour la boucle for du fait que ca ne fonctionne pas !
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 for (i=1; i<10; i++) { var copieDuNombre = document.obj[i]; 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.heur1[i] = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur2[i] = 'images/compteur/'+premiernum1[1]+'.jpg'; document.heur3[i] = 'images/compteur/'+premiernum1[2]+'.jpg'; document.heur1[i].src = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur2[i].src = 'images/compteur/'+premiernum1[1]+'.jpg'; document.heur3[i].src = 'images/compteur/'+premiernum1[2]+'.jpg'; } else if (longueur == 2) { document.heur1[i] = 'images/compteur/0.jpg'; document.heur2[i] = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur3[i] = 'images/compteur/'+premiernum1[1]+'.jpg'; document.heur1[i].src = 'images/compteur/0.jpg'; document.heur2[i].src = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur3[i].src = 'images/compteur/'+premiernum1[1]+'.jpg'; } else if (longueur == 1) { document.heur1[i] = 'images/compteur/0.jpg'; document.heur2[i] = 'images/compteur/0.jpg'; document.heur3[i] = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur1[i].src = 'images/compteur/0.jpg'; document.heur2[i].src = 'images/compteur/0.jpg'; document.heur3[i].src = 'images/compteur/'+premiernum1[0]+'.jpg'; } else { document.heur1[i] = 'images/compteur/0.jpg'; document.heur2[i] = 'images/compteur/0.jpg'; document.heur3[i] = 'images/compteur/0.jpg'; document.heur1[i].src = 'images/compteur/0.jpg'; document.heur2[i].src = 'images/compteur/0.jpg'; document.heur3[i].src = 'images/compteur/0.jpg'; } }
Ca ne fonctionne pas vraimment :/ ca me sort en base 10. Pour 30 seconde ca me donne 0.50 par exemple. je n'ai pas creusé plus pour le moment je voudrais tout d'abord resoudre mon soucis de boucle du post un peu plus haut.
Mais j'essaierais tout de meme ta methode voir si j'arrive a tirer un code plus simple. Merci !
30 secondes est bien la moitié d'une minute, soit 0.5 ... non??Pour 30 seconde ca me donne 0.50 par exemple.
Les joies du CSS | Réponses sur forum | Simple comme JS | Essais libres autour de l'API G$$gle Maps
✂ ---------------------------------------------
developpez.net c'est aussi :
✔ Les meilleurs cours et tutoriels pour apprendre le CSS
✔ Les meilleurs cours et tutoriels pour apprendre le (X)HTML
✔ Les meilleurs cours et tutoriels pour apprendre le JavaScript
hehe oui bien sur ! moi je veux 30 seconde affiche 30 sec et pas 0.5 tout comme 90 secondes m'affichera 1m30s.
Code : Sélectionner tout - Visualiser dans une fenêtre à part temptime.getSeconds()/60*100
=>
et hop .5 redevient .3
Code : Sélectionner tout - Visualiser dans une fenêtre à part temptime.getSeconds()
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Mais sinon il doit ressembler à quoi ton compteur en terme d'affichage final ?
je veu une image pour les minutes, une pour les dizaine de seconde et une derniere pour les secondes.
Le compteur fonctionne avec ma version un peu plus haut je me demandais si il n'y avais pas plus simple a faire.
Et surtout je souhaitais faire afficher plusieurs compteur avec une boucle for mais mon code ne fonctionne tel qu'il ai ecrit.
Jette y un oeil si tu kelk minute a y consacrer. Pour le moment je bloque la dessus.
voili voila
Merci
ben si c'est une horloge![]()
Utilise le Dater() de js ...
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Il me semble que l'objet dont tu parle ne permet pas de recuperer les secondes et les dizaine de seconde de maniere separer. Donc pour le moment mon code reste valable. J'aurais voulu le simplifier mais cela ne semble pas etre possible. Les solutions proposer fonctionne bien sur mais pas pour ce que je souhaite obtenir.
Je reposte mon bout de code:
La syntaxe de ma boucle en incluant i comme parametre a plusieurs endroit comporte t-il des erreurs ?
Merci
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 for (i=1; i<10; i++) { var copieDuNombre = document.obj[i]; 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.heur1[i] = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur2[i] = 'images/compteur/'+premiernum1[1]+'.jpg'; document.heur3[i] = 'images/compteur/'+premiernum1[2]+'.jpg'; document.heur1[i].src = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur2[i].src = 'images/compteur/'+premiernum1[1]+'.jpg'; document.heur3[i].src = 'images/compteur/'+premiernum1[2]+'.jpg'; } else if (longueur == 2) { document.heur1[i] = 'images/compteur/0.jpg'; document.heur2[i] = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur3[i] = 'images/compteur/'+premiernum1[1]+'.jpg'; document.heur1[i].src = 'images/compteur/0.jpg'; document.heur2[i].src = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur3[i].src = 'images/compteur/'+premiernum1[1]+'.jpg'; } else if (longueur == 1) { document.heur1[i] = 'images/compteur/0.jpg'; document.heur2[i] = 'images/compteur/0.jpg'; document.heur3[i] = 'images/compteur/'+premiernum1[0]+'.jpg'; document.heur1[i].src = 'images/compteur/0.jpg'; document.heur2[i].src = 'images/compteur/0.jpg'; document.heur3[i].src = 'images/compteur/'+premiernum1[0]+'.jpg'; } else { document.heur1[i] = 'images/compteur/0.jpg'; document.heur2[i] = 'images/compteur/0.jpg'; document.heur3[i] = 'images/compteur/0.jpg'; document.heur1[i].src = 'images/compteur/0.jpg'; document.heur2[i].src = 'images/compteur/0.jpg'; document.heur3[i].src = 'images/compteur/0.jpg'; } }![]()
Oula !!!
et que dirais tu de
pour les dizaines de secondes
Code : Sélectionner tout - Visualiser dans une fenêtre à part Math.floor(madate.getSeconds()/10)
puis
et poru les unités
Code : Sélectionner tout - Visualiser dans une fenêtre à part madate.getSeconds() % 10
Tu te bloques inutilement sur des broutilles ...
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Partager