somme des chiffres d'un javascript
J'ai vu un tas d'autres posts sur ce sujet mais aucun n'en javascript. voici mon code.
var theNumber = function digitAdd (base, exponent) {
var number = 1;
for (i=0; i < exponent; i++) {
var number = base * number;
}
return number
}
function find(theNumber) {
var sum=0;
parseInt(theNumber);
while(theNumber>0)
{
sum=sum+theNumber%10;
theNumber=Math.floor(theNumber/10);
}
document.writeln("Sum of digits "+sum);
}
find(theNumber (2, 50));
Je reçois la réponse correcte, je n'ai juste pas comprendre pleinement la 2e fonction, à savoir l'instruction while. Toute aide serait grandement appréciée. Merci!
source d'informationauteur Nic Meiring
Vous devez vous connecter pour publier un commentaire.
La deuxième fonction utilise l'opérateur modulo pour extraire le dernier chiffre:
Lorsque le dernier chiffre est extrait, il est déduit à partir du nombre:
Et le nombre est divisé par
10
:Chaque fois que la boucle se répète, le dernier chiffre est coupé et ajouté à la somme.
L'opérateur modulo renvoie le chiffre si le côté gauche est plus petit que le droit (ce qui sera le cas pour tout 1 chiffre), ce qui est quand la boucle pauses:
C'est la façon dont le premier chiffre est ajouté au total.
Moins numérique alternative serait celle-ci:
Il n'est littéralement ce que vous essayez de faire, qui est d'itérer sur les chiffres du numéro (par la conversion d'une chaîne).
j'utilise ceci :
Mise à jour (ES6 syntaxe) :
Pas sûr de ce que vous voulez dire, Dans le cas où vous vous posiez des questions sur la boucle while..
L'instruction while continuellement exécute un bloc de déclarations alors qu'une condition est vraie. Sa syntaxe peut être exprimé comme:
L'instruction while évalue l'expression, qui doit retourner une valeur booléenne. Si l'expression est évaluée à vrai, l'instruction while exécute l'instruction(s) dans le tout en bloc. L'instruction while continue les tests de l'expression et de l'exécution de son bloc jusqu'à ce que l'expression a la valeur false.
La boucle while est ici extraire les chiffres un par un à partir du nombre réel et l'ajout de ceux-ci. Essayez de faire chaque étape manuellement et vous l'obtiendrez.