#include <stdio.h>
void allEven(int number, int *result);
int main()
{
int num;
int result = 1;
allEven(num, &result);
printf("allEven(): %d", result
); return 0;
}
void allEven(int number, int *result)
{
if ((number % 10) % 2) // if the last digit is odd
{
*result = 0;
}
else
{
*result = 1;
if ((number / 10) != 0) //not the last digit to evaluate, we call the function again.
{
allEven((number / 10), result);
}
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+Cgp2b2lkIGFsbEV2ZW4oaW50IG51bWJlciwgaW50ICpyZXN1bHQpOwoKaW50IG1haW4oKQp7CiAgICBpbnQgbnVtOwogICAgaW50IHJlc3VsdCA9IDE7CiAgICBwcmludGYoIkVudGVyIGEgbnVtYmVyOiAiKTsKICAgIHNjYW5mKCIlZCIsICZudW0pOwogICAgYWxsRXZlbihudW0sICZyZXN1bHQpOwogICAgcHJpbnRmKCJhbGxFdmVuKCk6ICVkIiwgcmVzdWx0KTsKICAgIHJldHVybiAwOwoKfQp2b2lkIGFsbEV2ZW4oaW50IG51bWJlciwgaW50ICpyZXN1bHQpCnsKICAgIGlmICgobnVtYmVyICUgMTApICUgMikgLy8gaWYgdGhlIGxhc3QgZGlnaXQgaXMgb2RkCiAgICB7CiAgICAgICAgKnJlc3VsdCA9IDA7CiAgICB9CiAgICBlbHNlCiAgICB7CiAgICAgICAgKnJlc3VsdCA9IDE7CiAgICAgICAgaWYgKChudW1iZXIgLyAxMCkgIT0gMCkgLy9ub3QgdGhlIGxhc3QgZGlnaXQgdG8gZXZhbHVhdGUsIHdlIGNhbGwgdGhlIGZ1bmN0aW9uIGFnYWluLgogICAgICAgIHsKICAgICAgICAgICAgYWxsRXZlbigobnVtYmVyIC8gMTApLCByZXN1bHQpOwogICAgICAgIH0KICAgIH0KfQo=