zoukankan      html  css  js  c++  java
  • 买书方案

    一、题目要求

    书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:
    本数  2      3      4       5    折扣  5%   10%    20%   25%                                                 
    根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。
    设计算法能够计算出读者购买一批书的最低价格。

    二、设计思想

     

    由分析可得,大于十时,均可转化为6.7.8.9.10的情况。

    三、代码实现

    //2016.6.6买书方案
    //20143066 毛雯雯
    #include<iostream>
    using namespace std;
    double num1(int a)
    {   //买书的本数为6、7、8、9
       double sum1;
       switch(a%5)
       {
    		case 1:
    			sum1=5*8*0.75+8;break;
    		case 2:
    			sum1=5*8*0.75+2*8*0.95;break;
    		case 3:
    			sum1=4*8*0.8+4*8*0.8;break;
    		case 4:
    			sum1=5*8*0.75+4*8*0.8;break;   
       }
    	return sum1;   //返回最大折扣
    }
    
    int main(int argc, char* argv[])
    {
        int num;
        double sum;   //最大折扣
        cout<<"请输入您要购买的本数:";
        cin>>num;
        if(num<=5)
        {
           switch(num)
           {
    			case 1:
    				sum=8;break;
    			case 2:
    				sum=2*8*0.95;break;
    			case 3:
    				sum=3*8*0.9;break;
    			case 4:
    				sum=4*8*0.8;break;
    			case 5:
    				sum=5*8*0.75;break;
           }
        }
        if((num>5)&&(num<10))
        {
            sum=num1(num);      //大于5小于10时,调用num1函数
        }
        if(num>9)             //大于等于10之后的,可以转化为6、7、8、9的情况计算
        {
            switch(num%5)
           {
            case 0:
                sum=(num/5)*8*5*0.75;break;
           case 1:
               sum=(num/5-1)*5*8*0.75+num1(6);break;
           case 2:
               sum=(num/5-1)*8*5*0.75+num1(7);break;
           case 3:
               sum=(num/5-1)*8*5*0.75+num1(8);break;
           case 4:
               sum=(num/5-1)*8*5*0.75+num1(9);break;
           }
        }
       cout<<"最大折扣价为:"<<sum;
       cout<<endl;
       return 0;
    
    }
    

    四、实现截图

     

    五、个人总结

    一定要多分析!!!

  • 相关阅读:
    JAVA开发环境配置
    Java volatile关键字解惑
    Java实验案例(接口)
    Java 实验案例(多态)
    Eclipse 快捷键大全
    全球免费开放的电子图书馆
    Java 实验案例(类和对象篇)
    Java IO流(二)
    Linux zsh 实用配置
    Js远程调用封装
  • 原文地址:https://www.cnblogs.com/justmaomao/p/5564859.html
Copyright © 2011-2022 走看看