1、题目
书店针对《哈利波特》系列书籍进行促销活动一共5卷,用编号0、1、2、3、4表示,单独一卷售价八元,具体折扣如下所示:
本书 折扣
2 5%
3 10%
4 15%
5 20%
根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。设计算法能够计算出读者购买一批书的最低价格。
2、设计思路
根据题目总共可分以下三种情况考虑:
(1)五本以内,这种情况就是都买不一样,就能享受最大优惠
(2)六本到九本,分别计算得出相应最优结果
(3)十本以上,这类情况都可以规约到六到九本的情况
3、源代码
#include<iostream.h> void main() { int num; int a,b; cout<<"请输入买书的数量:"; cin>>num; a=num/5; b=num%5; if(b!=3) { cout<<"应买"<<a<<"套5本的,加上"<<b<<"本不一样的,共"<<num<<"本书"<<endl; } else { cout<<"应买"<<a-1<<"套5本的,加上两套4本不一样的,共"<<num<<"本书"<<endl; } cout<<"这样就能享受最多的折扣!"<<endl; }
4、结果截图