私のコード:
def power(x: Double, n: Int): Double = {
if (n % 2 == 0 && n > 0) power(power(x, n/2), 2)
else if (n % 2 == 1 && n > 0) x * power(x, n - 1)
else if (n == 0) 1
else if (n < 0) 1 / power(x, -n)
}
println(power(2, 2))
ターミナル:
$ scala ch2ex10.scala
/scala/impatient/ch2ex10.scala:5: error: type mismatch;
found : Unit
required: Double
else if (n < 0) 1 / power(x, -n)
これはどこUnit
から来たのですか?
ありがとう!