Sha256: 1964e1d6f6321c681aef87d1d874e32e899584fba7d9ab42d38f5120b6d687a1

Contents?: true

Size: 347 Bytes

Versions: 134

Compression:

Stored size: 347 Bytes

Contents

object CollatzConjecture {

  def isEven( v:Int ): Boolean = v % 2 == 0

  def collatz_h(n: Int, acc: Int): Option[Int] = {
    if (n <= 0)
      None
    else if (n == 1){
      Some(acc)
    } else if (isEven(n)){
      collatz_h(n/2, acc+1)
    } else{
      collatz_h(n*3 + 1, acc+1)}
  }

  def steps(n: Int): Option[Int] = collatz_h(n, 0)
}

Version data entries

134 entries across 134 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.179 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.178 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.177 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.176 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.175 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.174 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.173 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.172 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.171 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.170 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.169 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.167 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.166 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.165 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.164 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.163 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.162 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.161 tracks/scala/exercises/collatz-conjecture/example.scala
trackler-2.2.1.160 tracks/scala/exercises/collatz-conjecture/example.scala