0
点赞
收藏
分享

微信扫一扫

猴子吃桃子问题(循环、递归)

芒果六斤半 2022-03-30 阅读 75
scala

7-17 h0158. 猴子吃桃子问题 (10 分)

有一堆桃子,猴子第一天吃了其中的一半,并再多吃了一个!以后每天猴子都吃其中的一半,然后再多吃一个。当到第n天时,想再吃时(还没吃),发现只有1个桃子了。问题:最初共多少个桃子?

输入格式:

在一行中给出1个不超过30的正整数n。

输出格式:

在一行中输出最初的桃子个数。

输入样例:

10

输出样例:

桃子=1534
import scala.io.StdIn;
object Main{
    def main(args: Array[String]) : Unit = {
        var n = StdIn.readInt();
        var sum = 1;
        for ( i <- 1 to n - 1) {
            sum = (sum + 1) * 2;
        }
        println("桃子="+sum);
    }
}

import scala.io.StdIn
object Main {
    def main(args: Array[String]): Unit = {
        var n = StdIn.readInt();
        val num = f(1,1,n);
        print("桃子="+num);
    }
    def f(a : Int ,d : Int ,n : Int): Int = {
        var ans = (a + 1) * 2;
        var dcnt = d + 1;
        if(dcnt == n) return ans;
        else f(ans ,dcnt ,n);
    }
}
举报

相关推荐

0 条评论