zoukankan      html  css  js  c++  java
  • 购买图书

    一、题目

    书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:
         本数                  折扣
         2                   5%
         3                   0%
         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,只要在草稿纸上多加计算很容易找到规律,程序也就呼之欲出

  • 相关阅读:
    Lucene in action 笔记 case study
    关于Restful Web Service的一些理解
    Lucene in action 笔记 analysis篇
    Lucene in action 笔记 index篇
    Lucene in action 笔记 term vector
    Lucene in action 笔记 search篇
    博客园开博记录
    数论(算法概述)
    DIV, IFRAME, Select, Span标签入门
    记一个较困难的SharePoint性能问题的分析和解决
  • 原文地址:https://www.cnblogs.com/jiajun1/p/5609192.html
Copyright © 2011-2022 走看看