用JAVA,有1020个西瓜.(1)第一天卖一半多两个;(2)以后每天卖剩下的一半多两个;(3)问几天以后能卖完?

2024年12月05日 02:35
有3个网友回答
网友(1):

public class Test11 {
public static void main(String[] args) {
int num = 1020; //西瓜总数
int sales; //每天售卖西瓜数量
int days = 0; //天数
int remain = num; //每天剩余西瓜数量

while(remain >携数 0){
if(remain <= 4){
sales = remain;
remain = 0;
days++;
System.out.println("第 " + days + " 天售出 " + sales + " 个,余 " + remain + "镇罩 个");
break;
}
sales = remain / 2 + 2; //御隐闹每天售出一半多两个
remain -= sales; //每天剩余数
days++; //天数累加
System.out.println("第 " + days + " 天售出 " + sales + " 个,余 " + remain + " 个");
}

System.out.println(num + " 个西瓜 " + days + " 天售完。");
}
}

运行结果:
第 1 天售出 512 个,余 508 个
第 2 天售出 256 个,余 252 个
第 3 天售出 128 个,余 124 个
第 4 天售出 64 个,余 60 个
第 5 天售出 32 个,余 28 个
第 6 天售出 16 个,余 12 个
第 7 天售出 8 个,余 4 个
第 8 天售出 4 个,余 0 个
1020 个西瓜 8 天售完。

网友(2):

public class While{
public static void main(String[] args){
int sum = 1020;
int day = 0;
while(sum>迟凳0){
sum-=(sum/2+2);
day++;
}
System.out.println("经过"+day+"天后瓜唯坦卖完了"码山旅);
}
}

网友(3):

int sum=1020;
for(int i=0;sum>0;i++)
sum=sum-(sum/2+2);
System.out.println(i + "天后可以卖完1020个西瓜");
int类型是整型的神谨察,所游茄以除以晌蚂2后得到的还是一个整型,至于是得小数还是四舍五入之类的,你可以自已改一下