友情提示:380元/半年,儿童学编程,就上码丁实验室。
小明买苹果,每个苹果0.8元,小明第一天买2个苹果,第2天开始每天买前一天的2倍,直到购买的苹果个数为不超过100的最大值,求小明每天平均花多少钱?
思路:
假设每天购买的苹果数为n,所花钱的总额为money,那么所花钱的总额和每天购买的苹果数之间的关系可以通过等式:money = money + 0.8 * n来说明,它的具体含义是:截止到目前,所花的钱数等于今天购买的苹果钱数与之前钱数的总和。这里应注意n的变化,n的初值应该为2,随着天数每天增加(day++),n值随之变化,即n = n * 2,以上过程应该在while循环体中进行。根据题目要求:“直到购买的苹果个数为不超过100的最大值”,显然n值是否小于100便是判断while语句是否执行的条件。
代码:
int n = 2, day = 0;/*定义n,day为基本整型*/
float money = 0, ave;/*定义money,ave为单精度型*/
while(n<100)/*苹果个数不超过100,故while中表达式n小于100*/
{
money += 0.8 * n;/*将每天花的钱数累加求和*/
day++;/*天数自加*/
n *= 2;/*每天买前一天个数的2倍*/
}
ave = money / day;/*求出平均每天花的钱数*/
cout << “阳阳平均每天花:” << ave << “元” << endl;/*将求出的ave输出*/
转自公众号:
南昌青少年编程