一、题目要求

书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:

本数                  折扣

2                       5%

3                       10%

4                       20%

5                       25%

根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。
设计算法能够计算出读者购买一批书的最低价格。

  要求将设计思想、代码实现、实现截图、个人总结以博文的形式发表。(截止日期2015-4-15晚18:00)

二、设计思想

  首先注意到小于5本书的时候,套用现有的优惠条件就是最优惠的方案;

  如果书的数目大于10本,此时可以简化成买几个5本和一次6到10本这样的方案来达到最优惠的目的;  

  对6~10本进行简单的计算算出:

  6本:分解成5+1本;总价为:30+8元

    或分解成4+2本;总价为:25.6+15.2元

    或分解成3+3本;总价为:21.6+21.6元

    或分解成3+2+1

    或分解成2+2+2等

    可以看出5+1本最划算;

  7本:分解成5+2本;总价为:30+15.2元

      或分解成4+3本;总价为:21.6+25.6元

      或分解成2+2+3

     或分解成2+2+2+1等

    可以看出5+2本最划算;

  8本:分解成5+3本;总价为:30+21.6元

    或分解成4+4本;总价为:25.6+25.6元

    或分解成3+2+3

    或分解成2+2+2+2等

    可以看出4+4本最划算

  9本:分解成5+4本;总价为:30+25.6元

    或分解4+4+1

    或分解成3+3+3

    等

    此时为最划算(只有这一种情况)

  10本:买两个5本就行;

三、源代码

#include <iostream.h>
#include <conio.h>
int main(void)
{int n;cout<<"请输入要买几本书?"<<endl;cin>>n;if(n<6){cout<<"请重新输入大于5的书目:";cin>>n;}int a=n%5;int b=n/5;switch(a){case 1:cout<<"您先买"<<b*5<<"本书,"<<"再买1本书最划算"<<endl;cout<<"总价为:"<<b*30+8<<"元";break;case 2:cout<<"您先买"<<b*5<<"本书,"<<"再买2本书最划算"<<endl;cout<<"总价为:"<<b*30+15.2<<"元";break;case 3:cout<<"您先买"<<(b-1)*5<<"本书,"<<"再买两次4本书最划算"<<endl;cout<<"总价为:"<<(b-1)*30+51.2<<"元";break;case 4:cout<<"您先买"<<b*5<<"本书,"<<"再买4本书最划算"<<endl;cout<<"总价为:"<<b*30+25.6<<"元";break;case 0:cout<<"您直接买"<<b*5<<"本书最划算"<<endl;cout<<"总价为:"<<b*30<<"元";break;}//继续吗?int con;cout<<endl<<"继续吗?是输入1,否输入0:";cin>>con;if(con==1){main();}else{return 0;}getch();return;
}

   

四、结果截图

五、总结

我的队友:胡顺利

队友特点,想法多,思路复杂;

两人一起开发短短的十几分钟就能对一个问题进行较全面的分析,并生成一个估计可行的方案,能够很快的进行开发。

转载于:https://www.cnblogs.com/zhaixing/p/4425880.html

结对开发 《哈利波特》买书最实惠方案设计相关推荐

  1. 软件工程个人项目——买书的最低价格

    软件工程个人项目--买书的最低价格 题目要求: 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示: 本数        ...

  2. [给 ASP.NET初学者的话]挑书与买书,买适合自己的书

    原文出处:[给初学者的话]挑书与买书,买适合自己的书 http://www.dotblogs.com.tw/mis2000lab/archive/2010/11/15/choice_your_styl ...

  3. 课堂练习-买书价格最低

    实验背景 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示: 本数 折扣 2 5%         3 10%     ...

  4. 当当网年中图书大促来了,全年买书最好时机

    一年一度的 6 月年终年图书大促来了,今天给各位想买书的粉丝争取了点实在福利.同当当网谈了波大力度的图书满减活动,听说这么大的优惠一年也没两次,错过了不知道啥时候了. 先来看看买书优惠. 优惠规则 1 ...

  5. 我的书架——对一些书和如何买书的见解

    (作者doggyzone是一位淡泊名利的大好人,估计不太愿意主动把这篇帖子转到CSDN来.我就越俎代庖了.) 近日在网上看了不少帖子,感到我们的计算机图书市场还真是发生了很大的变化.CSDN刚开坛的时 ...

  6. 结对开发--求二维数组的最大子数组

    小组成员:信1201-1班  黄亚萍 信1201-1班  袁亚姣 一.题目要求 程序要使用的数组放在一个叫 input.txt 的文件中,  文件格式是: 数组的行数, 数组的列数, 每一行的元素,  ...

  7. 【坐在马桶上看算法】排序总结:小哼买书

    之前讲了三种常用的经典排序.排序算法还有很多,例如选择排序.计数排序.基数排序.插入排序.归并排序和堆排序等等.堆排序是基于二叉树的排序,以后再说吧.先分享一个超酷的排序算法的视频. 再来看一个具体的 ...

  8. Android技术应用实验指导书,Android应用开发实验指导书

    第 1 页手机应用开发实验指导书西南科技大学计算机科学与技术学院2015.11第 2 页目录手机应用开发 .1实验指导书 .1实验一:搭建 Android开发平台和创建 HelloWorld程序 .- ...

  9. 《Excel与VBA开发》一书上市时间

    如果没有意外的话,<Excel与VBA开发>一书在9月初应该就可以上市.

最新文章

  1. 企业运维之域控篇(十)--SERVER 2003 迁移到 SERVER 2008 (异机)
  2. Leet Code OJ 8. String to Integer (atoi) [Difficulty: Easy]
  3. 深入浅出Visual C++串口编程--深入浅出VC++串口编程之DOS的串口编程
  4. proe输入数字时成双出现_职场数据控系列,超市基础篇,商品双ABC分析法及应用...
  5. 三、Springmvc之Controller层方法返回值
  6. 通过图灵测试!Google掌舵人说“打电话AI”是一次非凡突破
  7. 计算机msoffice怎么复习,全国计算机一级MSoffice怎样复习我在 – 手机爱问
  8. 《Python黑帽子:黑客与渗透测试编程之道》读书笔记(一):网络基础
  9. 【Leetcode】1818.绝对差值和
  10. mac HBux连接夜神模拟器
  11. Floyd 算法+例题
  12. Android 打包签名 从生成keystore到完成签名
  13. 是非人生 — 一个菜鸟程序员的5年职场路 第9节
  14. 实数傅立叶变换和复数傅立叶变换
  15. matlab nlm,NLM.m · hr_yang/MatlabCode - Gitee.com
  16. 招商银行信用卡中心笔测
  17. Windows Workflow Foundation 2 规则引擎简介
  18. 等保测评合规意味着什么,你有没有想太多了
  19. 3168ngw网卡_无线+千兆有线双网卡!影驰B360 GAMER评测:千元内最具性价比的RGB主板...
  20. 桌面总是弹出计算机内存不足,win7系统总提示“内存不足,关闭程序”的解决方法...

热门文章

  1. nisp和cisp证书有什么区别
  2. idea启动过多导致C盘空间不足
  3. CTF线下AWD攻防步骤总结
  4. 基于JAVA竞赛信息发布及组队系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署
  5. 多台Linux服务器时钟同步
  6. 新发布!易聊 SCRM 正式上线
  7. 有ip可以建网站服务器,云服务器有独立ip吗?
  8. stm32时钟初始化过程浅析
  9. 输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变,句子中单词以单个空格符隔开,为简单起见,不带标点符号。 例如输入“I am a student”,则通过控制台输出“student a
  10. 大数据面试技巧——个人总结(持续更新)