Comment déterminer si un nombre est impair ou même sans opérations mod ou bit à bit?
Ce défi est extrêmement inefficace, mais remet en question votre capacité à sortir des sentiers battus pour une solution créative.
MODIFIER :
Veuillez créer une fonction. De plus, bien que l'expression régulière soit une réponse amusante, la fonction doit accepter n'importe quel nombre valide.
CONTEXTE : Cette question découle de mes premiers jours de programmation. Les devoirs pour notre premier jour de classe étaient d'écrire un programme simple qui imprimait «impair» ou «pair». Étant le gamin que j'étais, je n'ai pas lu le livre que nous avions pour la classe où il nous montrait simplement comment l'utiliser%
pour déterminer cela. J'ai passé environ une demi-heure à faire les cent pas dans ma chambre en essayant de penser à un moyen de le faire et je me suis souvenu de la conférence que les nombres peuvent perdre et gagner en précision car ils sont castés d'un type primitif à un autre. Par conséquent, si vous preniez le nombre, le divisiez par deux, puis le multipliez en arrière, ce n'était pas le nombre d'origine, alors vous sauriez que le nombre était impair.
J'ai été stupéfait le lendemain, alors que notre instructeur évaluait nos programmes, qu'il pensait que c'était la façon la plus originale, mais inefficace, de résoudre le problème.