I would be amazed to meet someone who, if asked whether 3042041 was odd or even, would follow this exponential-time procedure manually. Unless the candidate was such a person, it's a failure of programming.
Yeah, but "doesn't know about the % operator" is a lot less damning than "can only think of an exponential-time algorithm to determine if a number is even". Like, this is terrible, but it's linear time:
char s[32];
sprintf(s, "%d", n);
char c = s[strlen(s) - 1];
return c == '0' || c == '2' || c == '4' || c == '6' || c == '8';