一篮子苹果,每天吃一半多一个吃,第十天吃一半多一个后就剩余一个,求一共多少个苹果,JAVA版?

/**
* @author xuzhu
**/
public class TestApple {
public static void main(String[] args) {
int days = 11 ;
int sum = 1;
System.out.println("第1天,苹果总和"+"sum is "+sum);
for(int i = 2 ;i<=days ;i++){
sum = (sum+1)*2;
System.out.println("第"+i+"天,苹果总和"+"sum is "+sum);
}
System.out.println("all total is "+sum);
int sum1 = sum;
int eatCount = 0;
int day = 1;
while(true){
eatCount =sum1/2+1;
sum1 = sum1 - eatCount;
System.out.println("第"+day+"天,吃了"+eatCount+" 剩余"+sum1+"个");
if(sum1 == 1){
System.out.println("只剩下一个苹果了,day="+day);
break;
}
day ++;
}
}
}
运行结果:
第1天,苹果总和sum is 1
第2天,苹果总和sum is 4
第3天,苹果总和sum is 10
第4天,苹果总和sum is 22
第5天,苹果总和sum is 46
第6天,苹果总和sum is 94
第7天,苹果总和sum is 190
第8天,苹果总和sum is 382
第9天,苹果总和sum is 766
第10天,苹果总和sum is 1534
第11天,苹果总和sum is 3070
all total is 3070
第1天,吃了1536 剩余1534个
第2天,吃了768 剩余766个
第3天,吃了384 剩余382个
第4天,吃了192 剩余190个
第5天,吃了96 剩余94个
第6天,吃了48 剩余46个
第7天,吃了24 剩余22个
第8天,吃了12 剩余10个
第9天,吃了6 剩余4个
第10天,吃了3 剩余1个
只剩下一个苹果了,day=10