Using Haskell you can write it way more concise:
iseven :: Int -> Bool
iseven 0 = True
iseven 1 = False
iseven 2 = True
iseven 3 = False
iseven 4 = True
iseven 5 = False
iseven 6 = True
iseven 7 = False
iseven 8 = True
...
However, we can be way smarter by only defining the 2 base cases and then a recursive definition for all other numbers:
iseven :: Int -> Bool
iseven 0 = True
iseven 1 = False
iseven n = iseven (n-2)
It’s having a hard time with negative numbers, but honestly that’s quite a mood
Yeah but we can estimate how much it may or may not happen