0 votes

Comment vérifier si un nombre est divisible par un autre nombre ?

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.

2voto

Natsfan Points 12853

Les chiffres ne fonctionnent pas comme ça. Je suis désolé. Il existe une fonction qui fait exactement ce que vous voulez mais je ne sais pas si elle est disponible dans Apple script. La fonction s'appelle mod. Je sais qu'elle est disponible en Python. La fonction fonctionne comme suit : entrez 2 nombres dans la fonction mod. Un exemple est mod(12,2). Ce que vous demandez, c'est si 12 est divisible par 2. Vous pourriez donc avoir mod(14,2) mod(6894381,2). Si le nombre est divisible par 2, la fonction est zéro. Dans le cas contraire, il s'agit du reste de la division, comme si vous l'aviez effectuée vous-même. Cela fonctionne également pour n'importe quel nombre. mod(12,3) vous indique si 12 est divisible par 3. mod(27,3) = 0, mod(26,3) = 2. mod(300,50) est donc égal à zéro car 300 est divisible par 50.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X