Persona3Reload@lemmy.blahaj.zone to 196@lemmy.blahaj.zoneEnglish · 2 months agoRulelemmy.blahaj.zoneimagemessage-square50fedilinkarrow-up1378arrow-down15
arrow-up1373arrow-down1imageRulelemmy.blahaj.zonePersona3Reload@lemmy.blahaj.zone to 196@lemmy.blahaj.zoneEnglish · 2 months agomessage-square50fedilink
minus-squaregerryflap@feddit.nllinkfedilinkEnglisharrow-up22arrow-down1·2 months agoUsing 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
Using Haskell you can write it way more concise:
However, we can be way smarter by only defining the 2 base cases and then a recursive definition for all other numbers:
It’s having a hard time with negative numbers, but honestly that’s quite a mood
Recursion is its own reward