Je suis en train de créer un programme AppleScript qui vous permet de voir si le nombre que vous entrez est divisible par un autre nombre. Le code que j'utilise pour voir si mon nombre est divisible par deux (je pense) fonctionne parfaitement :
set twoCheck to (round (myNumber / 2))
set twoCheck to (twoCheck * 2)
if twoCheck = myNumber then
set twoCheck to true
else
set twoCheck to false
end if
Pour déterminer si un nombre est divisible par trois, on additionne tous les chiffres du nombre et si la somme est divisible par trois, le nombre d'origine l'est aussi. J'utilise ce code pour trouver la somme des chiffres de mon nombre :
set numString to (myNumber as string)
set numCount to (number of characters of numString)
set threeCheck to 0
set numSelect to 1
repeat numCount times
set threeCheck to (threeCheck + (character numSelect of numString))
set numSelect to (numSelect + 1)
end repeat
Ce code fonctionne parfaitement. Je me suis dit que si j'utilisais le même code pour vérifier si mon nombre est divisible par deux et que je remplaçais les deux par des trois, il s'exécuterait correctement et me dirait si la somme des chiffres est divisible par trois. Mais ce n'est pas le cas. Le code renvoie toujours soit "vrai", soit "faux", et il n'est presque jamais précis.
C'est peut-être évident, et je m'en excuse, mais je ne comprends pas. Gardez à l'esprit que je veux savoir si le nombre que j'entre est divisible par n'importe quel nombre, pas seulement par le nombre trois (bien que dans ce cas je veuille savoir s'il est divisible par trois, mais en d'autres termes, ce code doit être extensible à d'autres nombres).
Je suis assez novice en AppleScript et je serais ravi de recevoir de l'aide à ce sujet. Je vous remercie.