书店促销优惠

一、题目

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

根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。
设计算法能够计算出读者购买一批书的最低价格。
要求将设计思想、代码实现、实现截图、个人总结以博文的形式发表。

二、设计思想

题目不难,有些像小学数学题。首先先算出特殊的情况,当买6,7,8,9本书时,需要把这些情况的最小花费算出来,结果得知,除了8,其他的情况都是有5本的便宜,买8本的时候,4,4分比较划算。所以8是一个特别的地方。一般规律是,书的数量除以5取余,可以得出余数,进而得到余数与花费的关系,只需一个switch函数就行。

三、代码

#include<iostream.h>
int main()
{
	double sum;
	sum=1;

	int num,m;

	cout<<"请输入购买数量";
	cin>>num;
	m=num%5;
	m=m+5;
	switch(m)
	{

		case 5:
            sum=num*8*0.75;
            break;
        case 6:
            sum=(num-1)*8*0.75+8;
            break;
        case 7:
            sum=(num-2)*8*0.75+8*2*0.95;
            break;
        case 8:
            sum=(num-8)*8*0.75+4*8*0.8*2;
            break;
        case 9:
            sum=(num-4)*8*0.75+8*4*0.8;
            break;
        }
	cout<<"最优惠价格"<<sum<<endl;
}

四、实验截图

五、实验总结

由于先前考虑不周,造成程序输出不对,原因是8的情况,以及所有余数为三的情况。后来经过改进,把求余结果与5相加,问题迎刃而解。总结下,就是把所有三的情况变成8

,这样,8可以分成4.4就完全统一起来了。

经验总结,遇到问题,尤其是类似数学问题,先代数算算,过一遍程序,再总结错误,得出一致的结论与规律。

时间: 2024-08-02 17:37:04

书店促销优惠的相关文章

哈利波特书店促销

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

书店促销问题

1.题目: 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3. 4表示,单独一卷售价8元, 具体折扣如下所示: 本数                    折扣 2                       5% 3                       10% 4                       20% 5                       25% 根据购买的卷数以及本数,会对应不同折扣规则情况.单数一本书只会对应一个 折扣规则,例如购买

书店促销活动

题目:书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示: 本数                  折扣 2                    5% 3                    10% 4                    20% 5                    25% 根据购买的卷数以及本数,会对应不同折扣规则情况.单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的

书店促销

设计思想: 折扣            付款 1        0                 8 2        0.05            8*0.95 3        0.10            8*0.9 4        0.20            8*0.8 5        0.25            8*0.75 1本无折扣 2本2*8*0.95 3本3*8*0.9 4本4*8*0.8 5本5*8*0.75 6本 5+1 7本 5+2 8本 4+4 而不是

电子商务-促销系统

促销系统的主要作用:主要提供商品的促销优惠价格,如果该商品没有促销,就提供商品的原价. 促销类型: 直降促销:限时直降,限时限量直降 满额促销:满减,满折 套装促销 (多个商品一起买,N个商品享受优惠 赠品(买N赠N) 秒杀 促销规则: 限制条件: 商品限制:SKU,SPU,品类,品牌,商家 用户限制:pin ip限制 由于促销提供商品的价格,当用户每次浏览商品页面,可能对促销系统的访问多达几十次,所以对促销的高并发要求非常高. 为了及时响应前端的请求,读取数据,计算都应该尽量的快和简单. 由于

累计促销计算公式

在活动期间,分次下的多个订单,可累计享受活动的促销优惠,如下: 场景: 计算公式: 累计促销计算公式,布布扣,bubuko.com

阿里云新年优惠卷,代金券领取方法

阿里云不定期会对域名等产品进行促销优惠活动,时常发放优惠券和代金券,有些同学常常不知道在哪里领取,下面给大家介绍快速领取阿里云优惠券的方法. [开年HI购季]爆款云产品5折 https://www.aliyun.com/acts/product-section-2019/new-users?userCode=jbfy9net [助力企业上云]性能级主机2-5折 https://promotion.aliyun.com/ntms/act/enterprise-discount.html?userC

【题解】购书

题目描述 书店搞促销优惠活动:“卖3本免费1本”.即如果你买3本书,价格最便宜的那本书就不收钱.如果买很多书,不同分组优惠的价格可能不同.比如,买7本书,价格分别是:10,3,2,4,6,4,9.如果分组是:(10,3,2),(4,6,4)和(9)第一组免费价格2,第二组免费价格4,第三组不能免费. 现在,你买了N本书,请恰当分组(每组1本到3本),使得花费最少? 输入输出格式 输入格式 第一行包含1个整数N,1≤N≤100000. 下面N行,每行一个整数Ci表示一本书的价格.1≤Ci≤1000

饮料换购

乐羊羊饮料厂正在举办一次促销优惠活动.乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料,并且可以一直循环下去,但不允许赊账. 请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的n瓶饮料,最后他一共能得到多少瓶饮料. 输入:一个整数n,表示开始购买的饮料数量(0<n<10000) 输出:一个整数,表示实际得到的饮料数 例如: 用户输入: 100 程序应该输出: 149 用户输入: 101 程序应该输出: 151 资源约定: 峰值内存消耗(含虚拟机) < 256M CPU