習題4-10 猴子吃桃問題

酒色財氣君莫沾發表於2020-10-27

一隻猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多吃了一個;第二天早上又將剩下的桃子吃掉一半,又多吃了一個。以後每天早上都吃了前一天剩下的一半加一個。到第N天早上想再吃時,見只剩下一個桃子了。問:第一天共摘了多少個桃子?

輸入格式:

輸入在一行中給出正整數N(1<N≤10)。

輸出格式:

在一行中輸出第一天共摘了多少個桃子。

 

思路:①可以使用for函式來倒推找出第一天摘了桃子的數量

②可以使用遞迴來推算出第一天摘的桃子的數量

#include<stdio.h>
//求第一天摘下桃子的個數
int Peach(int n){
	if(n>1){
		return 2*Peach(n-1)+2;
	}
	else{
		return 1;
	}
}
int main(void){
	int n;
	scanf("%d",&n);
	printf("%d",Peach(n));
	return 0;
}

 

相關文章