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);
}
}