1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
object App { def exponentiate(base : Double, exponent : Double) : Double = (base, exponent) match { case (0, 0) => 1.0 case (b, 0) => 1.0 case (b, 1) => b case (b, e) => b * exponentiate(b, e - 1) } def main(args : Array[String]) = System.out.println(exponentiate(2, 2)) }