Je suis conscient que l'opérateur d'incrément = ++ i, est un raccourci pour i = i +1
tandis que l'opérateur raccourci pour la décrémentation est --i (l'opérateur décrément est i = i -1).Astérisques supplémentaires dans ma sortie
Dans ce cas, j'essaie d'imprimer une certaine quantité d'astérisques pour numStars et donc je suis allé avec l'opérateur d'incrémentation (i = i + 1). Je suis allé avec numPrinted = numPrinted + 1 pour incrémenter. Voici un bref coup d'oeil du code:
numStars = 12;
numPrinted = 1;
while (numPrinted < numStars) {
numStars = numStars * numPrinted;
numPrinted = numPrinted + 1; //Went for increment since I'm assuming
additional asterisks will be shown
System.out.print("*"); /* My output produces a total of 14 asterisks
whereas the expected output wants 12 asterisks */
}
Voyant que le résultat attendu est de 12 et numStars = 12 déjà, était-il nécessaire de me mettre numStars = numStars * numPrinted? Parce que je pense que cela pourrait être la raison pour laquelle il y a ces deux astérisques supplémentaires dans ma sortie plutôt que seulement 12 astérisques. A moins que les deux astérisques supplémentaires soient là à cause de ma décision d'incrémenter numPrinted?
Merci d'avance pour l'aide et les suggestions qui seront faites ici.
Non, vous devez traiter 'numStars' comme une constante, et vous ne devriez certainement pas le multiplier avec 'numPrinted'. Vous devriez aussi changer votre boucle 'while' en une boucle' for'. – Andreas
[Qu'est-ce qu'un débogueur et comment peut-il m'aider à diagnostiquer des problèmes?] (Https://stackoverflow.com/q/25385173/5221149) – Andreas