Bonjour,
j'ai un tableau pour le résultat:
divideBy = [ [], [], [0,0] ].
J'ai un autre tableau:
primes = [ 0, 0, 2, 3, 5, 7 ] // ne pas se préoccuper des 0, je ne m'en sert pas pour l'instant.
Puis je vais incrémenter sur une plage de chiffres de min à max en les factorisant sur les chiffre de "primes".
c'est à dire, en considérant min = 2 et max = 6, je vais tenter de de voir si 6 % 2 == 0, si oui, faire quelque chose. je voudrais que le code refasse ce même quelque chose tant que par exemple 6 % 2 == 0. En même temps un compteur compte le nombre de passage dans la boucle while. Enfin lorsque 6 % 2 == 1, il sortirait de la boucle en faisant un PUSH de la valeur du compteur dans le dernier tableau de divideBy.
Pour une liste de 2 à 6 voila ce que ça donnerait au final:
voici mon code qui ne fonctionne pas, ou est le problème ?
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 let primes = [ 0, 0, 2, 3, 5, 7 ]; let dividedBy = [[],[]] let compte = 0; for (let n = min; n <= max; n++) { dividedBy.push([0,0]); // pour chaque n j'ajoute un nouveau sous tableau for (let k = 2; k <= primes.length; k++) { while (n % primes[k] == 0) { let n2 = n / primes[k]; compte += 1 n = n2; k--; } dividedBy[dividedBy.length-1].push(compte) compte = 0 } }
Partager