<?php
function is_even($num) {
}
function is_odd($num) {
}
// this last one seems self-explanatory, but if you want it, here it is
function is_neither_even_nor_odd($num) {
return !is_even($num) && !is_odd($num);
}
// Tests: The following should all output true:
is_even(0),
is_even(2),
is_even(-6),
is_even(51238238),
is_odd(1),
is_odd(-1),
is_odd(57),
is_neither_even_nor_odd(1.5),
is_neither_even_nor_odd(2.5),
is_neither_even_nor_odd(-0.5),
is_neither_even_nor_odd(0.00000001)
);
PD9waHAKCmZ1bmN0aW9uIGlzX2V2ZW4oJG51bSkgewogICAgcmV0dXJuIGlzX2ludCgkbnVtKSAmJiBhYnMoJG51bSAlIDIpID09IDA7Cn0KZnVuY3Rpb24gaXNfb2RkKCRudW0pIHsKICAgIHJldHVybiBpc19pbnQoJG51bSkgJiYgYWJzKCRudW0gJSAyKSA9PSAxOwp9Ci8vIHRoaXMgbGFzdCBvbmUgc2VlbXMgc2VsZi1leHBsYW5hdG9yeSwgYnV0IGlmIHlvdSB3YW50IGl0LCBoZXJlIGl0IGlzCmZ1bmN0aW9uIGlzX25laXRoZXJfZXZlbl9ub3Jfb2RkKCRudW0pIHsKICAgIHJldHVybiAhaXNfZXZlbigkbnVtKSAmJiAhaXNfb2RkKCRudW0pOwp9CgovLyBUZXN0czogVGhlIGZvbGxvd2luZyBzaG91bGQgYWxsIG91dHB1dCB0cnVlOgp2YXJfZHVtcCgKCWlzX2V2ZW4oMCksCglpc19ldmVuKDIpLAoJaXNfZXZlbigtNiksCglpc19ldmVuKDUxMjM4MjM4KSwKCWlzX29kZCgxKSwKCWlzX29kZCgtMSksCglpc19vZGQoNTcpLAoJaXNfbmVpdGhlcl9ldmVuX25vcl9vZGQoMS41KSwKCWlzX25laXRoZXJfZXZlbl9ub3Jfb2RkKDIuNSksCglpc19uZWl0aGVyX2V2ZW5fbm9yX29kZCgtMC41KSwKCWlzX25laXRoZXJfZXZlbl9ub3Jfb2RkKDAuMDAwMDAwMDEpCgkpOw==