J'ai un int m
et unsigned int j
et souhaitez afin de déterminer si elles sont à la fois même ou les deux impairs.
Dans le passé, j'ai été en utilisant
if((int(j)+m)%2)
pour attraper les cas que un seul est impair. Mais je m'inquiète de la conversion en int
une modification incorrecte de la paire-impaire-ness de j
.
Effectuez l'une de ces problèmes?
if(!(j%2)!=!(m%2))
if(bool(j%2)!=bool(j%2))
Je sais que
if(j%2!=m%2)
ne fonctionne pas parce que 'm%2' produira -1
lorsque m
est négative, ce qui vous permettra de toujours évaluer à l' true
quelle que soit la valeur de j%2
est.