Skip to content

Instantly share code, notes, and snippets.

@MAGANER
Last active December 29, 2021 08:50
Show Gist options
  • Save MAGANER/43cc7c4db1febcd1b4f973bddaf3f30e to your computer and use it in GitHub Desktop.
Save MAGANER/43cc7c4db1febcd1b4f973bddaf3f30e to your computer and use it in GitHub Desktop.
The Collatz hypothesis
kolc::Integer -> Integer
kolc n | even n = toInteger n `div` 2
kolc n | not $ even n = (n*3)+1
gks'::[Integer] -> [Integer]
gks' xs = xs ++ [kolc $ last xs]
gks::[Integer] -> [Integer]
gks xs | (last xs) == 1 = xs
gks xs = gks $ gks' xs
--pass any number
main = print $ gks [5]
def is_even(number):
return number % 2 == 0
def kolc(number):
print(int(number))#it can be float,but something like x.0
if number == 1:
return number
if is_even(number):
n = number/2
kolc(n)
else:
n=(number*3)+1
kolc(n)
#pass any number here
n = kolc(666)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment