课堂作业----一批书的最低价格
2016-06-03 14:43
423 查看
购买一批书的最低价格
题目:
书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:
本数 折扣
2 5%
3 10%
4 20%
5 25%
根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。
设计算法能够计算出读者购买一批书的最低价格。
思路:
5本以下,购买不重样的是最低价格。
5本以上,6本是买一套并单买1本。
7本,买一套并买不重样的2本。
8本为特殊情况,买两套四本的。
9本为买一套并买不重样4本。
10本为买两套。
即买m本,特殊情况为8,13,18......5n+8...(n=0,1,2.....)
其余均和5,6,7,9,10类似。
实验源代码:
实验截图:
心得体会:
把每种情况都列出来,找到其中规律,用表达式表示出来即可。
题目:
书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:
本数 折扣
2 5%
3 10%
4 20%
5 25%
根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。
设计算法能够计算出读者购买一批书的最低价格。
思路:
5本以下,购买不重样的是最低价格。
5本以上,6本是买一套并单买1本。
7本,买一套并买不重样的2本。
8本为特殊情况,买两套四本的。
9本为买一套并买不重样4本。
10本为买两套。
即买m本,特殊情况为8,13,18......5n+8...(n=0,1,2.....)
其余均和5,6,7,9,10类似。
实验源代码:
#include<iostream> using namespace std; int main() { int x=0,y=0; //书的数目,余数 double money; //金额 cout<<"请输入图书的数量:"; cin>>x; y=x%5; if(y==0) money=(x/5)*(5*8)*0.75; else if(y==1) money=(x-y)/5*(5*8)*0.75+y*8; else if(y==2) money=(x-y)/5*(5*8)*0.75+y*8*0.95; else if(y==3) { if(x==3) money=21.6; else money=(x-8)/5*(5*8)*0.75+51.2; } else money=(x-y)/5*(5*8)*0.75+y*8*0.8; cout<<"最低价格是:"<<money<<endl; return 0; }
实验截图:
心得体会:
把每种情况都列出来,找到其中规律,用表达式表示出来即可。
相关文章推荐
- 课堂练习--最少花费的购买书籍
- HDFS源码分析之编辑日志编辑相关双缓冲区EditsDoubleBuffer
- 音频-Multichannel Mixer Unit 播放
- 大规模DDoS攻击来了宝宝一开始也慌了
- Java Web开发——Filter过滤器
- 从SQL语言的分类谈COMMIT和ROLLBACK的用法
- 6.2Ant
- Gym 100269B-Ballot Analyzing Device
- 第一次使用Android Studio时你应该知道的一切配置
- 21天速成 C++?编程生涯的一点思考
- 致第一次安装RIME的你
- 【转载】 ionic 的 下拉刷新 与 上拉加载
- poj 3187 next_permutation简单应用
- (转载)Qt 的线程与事件循环——可打印threadid进行观察槽函数到底是在哪个线程里执行,学习moveToThread的使用)
- sdl在一些电脑上无法播放出声音
- 打通流程管理与MIS数据的管道是运用工作流程工具搭建业务系统的关键
- STM32 OSC_IN跟OSC_OUT的作用 和 各种接法
- 【iOS开发】HTTP请求错误码 ? CodeType
- Same Tree
- ElasticSearch实战-入门