递归的几个demo

/**
  * Created by root
  * Description : 递归函数
  */
object RecursionTest {
  def main(args: Array[String]): Unit = {

    // a到b的累加
    def foo(a:Int,b:Int):Int ={
      if (a > b) 0
      else a + foo(a+1,b)
    }

    println(foo(1,5))

    // a的阶乘
    def foo1(a:Int):Int={
        if (a <= 1) 1
        else a * foo1(a-1)
    }

    println(foo1(5))

    // a到b的平方和
    def foo2(a:Int,b:Int):Int={
      if (a > b) 0
      else a * a + foo2(a+1,b)
    }

    println(foo2(2,3))
  }

}

 

posted @ 2017-12-06 11:08  麻雀虽小五脏俱全  阅读(333)  评论(0编辑  收藏  举报