Notre nouvelle fonction IsNumberEven est certes plus performante que la première, mais est-elle pour autant la meilleure ? Hélas, la réponse est non. Il est en effet plus rapide encore de tirer parti de la propriété mathématique suivante : « tout nombre pair écrit en binaire se termine par un zéro ». C'est simple : 2 s'écrit 10, 4 s'écrit 100, 6 s'écrit 110, etc... (et cela se généralise). Allons-y donc franchement et savourons notre victoire (même dérisoire, une victoire est toujours une victoire) :
'Détermine si un nombre est impair
Public Function
IsNumberEven (Number As Long) As Boolean
IsNumberEven = ((Number
And 1) = 0)
End Function