前言
简单问题,写的不好,大佬见谅.
如有疏漏,欢迎指正,小编垂首.
问题描述:
小明买了一堆桃子,不知道个数,第一天吃了一半的桃子,还不过瘾,又多吃了一个。以后他每天吃剩下的桃子的一半还多一个,到n天只剩下一个桃子了。问:最开始买了多少桃子。
输入格式:输入一个整数n ,2<= n<=3
输出格式:输出买的桃子的数量
问题解析:
第n-1天的桃子数是(第n天的桃子数+1)*2
实现代码:
代码如下(示例):
#include<iostream>
using namespace std;
int result(int n,int m) {
if (n == 1) return m;
return result(n - 1, (m+1)*2);
}
int main() {
int n;
cin >> n;
cout << result(n, 1) << endl;
return 0;
}
测试案例:
总结
递归练习