码迷,mamicode.com
首页 > 其他好文 > 详细

课堂练习-促销书

时间:2016-06-01 16:51:47      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:

  

题目:

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

                               本数                  折扣

                                   2                       5%

                                   3                       10%

                                   4                       20%

                                   5                       25%

根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。

设计算法能够计算出读者购买一批书的最低价格。

要求将设计思想、代码实现、实现截图、个人总结以博文的形式发表。(截止日期2016-6-318:00

 

设计思路:通过列出购买1~10书最小花费是的购买形式,找到相应的规律:5本以下购买不同的数最优惠,6本(1,57本(2,58本(4,49本(4510本(5,5

 

代码实现:

 

//陈昌 20143051 
//   2016.5.30  哈利波特 促销书籍
#include<iostream>
using namespace std;
void main()
{
	double monery;
	int num;
	int shang,yu;
	cout<<"请输入购买数量:";
	cin>>num;
	if(num<=5)
	{
		switch(num)
		{
		case(1): monery=8;break;
		case(2): monery=16*0.95;break;
		case(3): monery=24*0.9;break;
		case(4): monery=32*0.8;break;
		case(5): monery=30;break;
		default:cout<<"输入错误!!"<<endl;
		}
	}
	else if(num<=10)
	{
		switch(num)
		{
		case(6): monery=38;break;
		case(7): monery=45.2;break;
		case(8): monery=51.2;break;
		case(9): monery=55.6;break;
		case(10): monery=60;break;
		}
	}
	else
	{
		shang = num / 10;
		yu = num % 10;
		switch(yu)
		{
		case(1): monery=8;break;
		case(2): monery=16*0.95;break;
		case(3): monery=24*0.9;break;
		case(4): monery=32*0.8;break;
		case(5): monery=30;break;
		case(6): monery=38;break;
		case(7): monery=45.2;break;
		case(8): monery=51.2;break;
		case(9): monery=55.6;break;
		}
		monery +=60*shang;
	}
	cout<<"购买数量为:"<<num<<"  应付金额:"<<monery<<endl;
}

  

实现截图:

 技术分享

个人总结:

列出各种可能,找寻相关的规律

课堂练习-促销书

标签:

原文地址:http://www.cnblogs.com/runner86i/p/5550135.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!