Recursion

by Shridhar Baddur

JavaScript

/*
Here’s another way to define whether a positive whole number is even or odd:

 Zero is even.

 One is odd.

 For any other number N, its evenness is the same as N - 2.

Define a recursive function isEven corresponding to this description. The function should accept a number parameter and return a Boolean.

*/

function isEven(x){
	if(x===0)
  	return true;
  else if(x===1)
  	return false;
  else if(x<0)
  	return isEven(-x);
  else
  	return isEven(x-2);
}
console.log(isEven(50));
// → true
console.log(isEven(75));
// → false
console.log(isEven(-1));
// → false