Persona3Reload@lemmy.blahaj.zone to 196@lemmy.blahaj.zoneEnglish · 16 hours agoRulelemmy.blahaj.zoneimagemessage-square53fedilinkarrow-up1338arrow-down16
arrow-up1332arrow-down1imageRulelemmy.blahaj.zonePersona3Reload@lemmy.blahaj.zone to 196@lemmy.blahaj.zoneEnglish · 16 hours agomessage-square53fedilink
minus-squaregerryflaplinkfedilinkEnglisharrow-up8·3 hours 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