c++习题01-ljc的暑期兼职

目录

一,题目描述 

二,思路 

 三,伪代码

四,流程图 

五,代码


一,题目描述 

二,思路 

1,根据题目要求需要声明4个变量:a,b,c,d ;牛奶价格a,活动要求b,赠送的瓶数c,总共的钱d。

2,现在我手上有d元
1)一开始就要判断:d>=a?,如果满足这个条件,就执行接下来的判断(既可以进入超市购物),否则(d<a)一瓶牛奶都买不了,直接返回0(买不了任何东西,超市里面只有牛奶)

2)之后需要进行相应的运算

①自己掏钱买的牛奶瓶数=d/a

  • d/a:在有限的资金d元内,买到的牛奶瓶数。

②超市赠送的牛奶瓶数=(d/a)*a/b*c

  1. (d/a)*a:买牛奶花的钱数。
  2. (d/a)*a/b:花的钱数去整除活动要求b,看能够满足活动要求几次
  3. (d/a)*a/b*c:满足活动要求的次数乘上一次赠送的牛奶瓶数,就是超市总的赠送瓶数

③将自己掏钱买的牛奶瓶数和超市总的赠送瓶数相加,就是我最后有的牛奶瓶数。

即d/a+(d/a)*a/b*c。

例如:我有20元
一瓶牛奶5元,花15元就送2瓶牛奶,最后我能有(4+2)瓶牛奶。 

 三,伪代码

将上面的思路修改成【伪代码】如下:

1,声明需要用到的变量
2,身上的钱是否买得起一瓶牛奶?真
输出最后有的牛奶瓶数

3,身上的钱是否买得起一瓶牛奶?假
输出0

四,流程图 

结合思路和伪代码,绘制出相应的流程图如下: 

 

如果想要绘制出类似上面的流程图,可以到wps软件中进行制作,步骤如下👇

五,代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int a,b,c,d;
	cin>>a>>b>>c>>d;
	if(d>=a)
	{  
	  cout<<d/a+((d/a)*a/b)*c;
	}
	else cout<<0;
	return 0;
}

相信仔仔细细阅读了上面代码的伙伴,能够发现上面的代码还可以继续简化。

我的输出表达式:d/a+(d/a)*a/b*c,在它的外面还有一个d>=a的判断语句,我不加这个判断也可以,因为当d<a的时候,d/a+(d/a)*a/b*c=0,所以简化后的代码如下👇

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int a,b,c,d;
	cin>>a>>b>>c>>d;
	cout<<d/a+((d/a)*a/b)*c;
	return 0;
}

 有问题请在评论区留言或者是私信我,回复时间不超过一天。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值