购书方案

一、思路

购买书总共有十种方案,每一种方案单独考虑。因此只需要分情况考虑就行。

二、代码

  

//书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:
//                                 本数                      折扣
//                                   2                        5%
//                                   3                       10%
//                                   4                       20%
//                                   5                       25%
//信1301-1 黄山成 20133048
#include<iostream>
using namespace std;

void book_Strategy(int n)
{

    int option;
    option=n%10;//总共有10种购书方法
    double volume=n/5;//购买书的卷数
    int other_Books=n%5;//剩余的书的个数
    double money;
    
    
    switch(option)
    {
    case 0:money=40*volume*0.75;
        break;
    case 1:money=40*volume*0.75+8;
        break;
    case 2:money=40*volume*0.75+8*2*0.95;
        break;
    case 3:money=40*volume*0.75+8*3*0.9;
        break;
    case 4:money=40*volume*0.75+8*4*0.8;
        break;
    case 5:money=40*volume*0.75;
        break;
    case 6:money=40*volume*0.75+8;
        break;
    case 7:money=40*volume*0.75+8*2*0.95;
        break;
    case 8:money=40*(volume-1)*0.75+8*4*0.8*2;
        break;
    case 9:money=40*volume*0.75+8*4*0.8;    
        break;
    }
    if(option!=8)
    {
        cout<<"购书方案: "<<volume<<"套全书"<<""<<other_Books<<"卷书"<<endl;
    }
    else
    {
        cout<<"购书方案: "<<volume-1<<"套全书"<<"和两套4卷书"<<endl;
    }
    cout<<"价格为:"<<money<<"";

}
void main()
{
    double m;
    cout<<"输入购书数量:";
    cin>>m;
    while(m<0||(m!=(int)m))
    {
        cout<<"购书数量错误,请重新输入";
        cin>>m;
    }
    
     cout<<"购买"<<m<<"本书的";
     book_Strategy(m);
    


}

 

三、截图

四、总结

这道题的根本是找出规律,如果发现不了规律就很难完成。

项目计划日志(单位:h):

 

  听课 编写程序 阅读相关书籍 网上查找资料   日总计
周一 2 0 0 0 2
周二 0 1 0  0 1
周三  0 0 1  0 1
周四 2 1.5  0 0 3.5
周五  0 0.5 2 0 2.5
周六  0 0 0  0 0
周日  0  0  0  0  0
周总计 4 3 2 0 10

posted @ 2016-06-02 16:03  SurverDevin  阅读(559)  评论(0编辑  收藏  举报