Je me sens stupide de poser une question aussi simple, mais existe-t-il un moyen facile de déterminer si un entier est pair ou impair?Détermination des nombres pairs/impairs (entiers)?
Répondre
Ce n'est pas exactement Android spécifique, mais une fonction assez standard serait:
boolean isOdd(int val) { return (val & 0x01) != 0; }
if ((n % 2) == 0) {
// number is even
}
else {
// number is odd
}
Vous pouvez utiliser modular division (techniquement en Java, il agit comme un opérateur reste stricte, le lien a plus de discussion):
if ((n % 2) == 0) {
//Is even
} else {
//Is odd
}
Si vous faites une opération de bits et avec 1
, vous pouvez détecter si le bit le moins significatif est 1. Si c'est le cas, le nombre est impair, sinon pair. si c'est une préoccupation
Dans les langues C-ish, bool odd = mynum & 1;
C'est que mod
plus rapide (sage-performance),.
Quand une certaine façon %
comme un opérateur n'existe pas, vous pouvez utiliser l'opérateur:
oddness = (n & 1) ? 'odd' : 'even'
ouais, c'était une faute de frappe, désolé! – thomaspaulb
ne devrait-il pas être des guillemets doubles? – st0le
wouldn n'est-ce pas vrai quand mynum est bizarre? – billjamesdev
Je pense que c'est défectueux. Vous devez renommer votre variable en impaire. – Anton
@ Bill, @Anton - désolé, j'avais posté avec le mauvais sens pour le résultat. Je pensais que j'avais édité avant que quelqu'un ne m'attrape ... – mtrw