zoukankan      html  css  js  c++  java
  • 哈利波特买书事件

    题目:

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

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

     1 #include <iostream>
     2 using namespace std;
     3 int main()
     4 {
     5     int num;
     6     int num1;
     7     int num2;
     8     int num3;
     9 
    10     cout << "printf number of books";
    11     cin >> num;
    12 
    13     if (num >= 1 && num <= 5)
    14         cout << "" << num << "中不同的书即可";
    15     else
    16     {
    17         switch (num)
    18         {
    19         case 6:
    20             cout << "买5+1的套餐";
    21             break;
    22         case 7:
    23             cout << "买5+2的套餐";
    24             break;
    25         case 8:
    26             cout << " 买4+4的套餐";
    27             break;
    28         case 9:
    29             cout << "买5+4的套餐";
    30             break;
    31         default:
    32             num1 = num / 5;
    33             num2 = num % 5;
    34             num3 = num2 + 5;
    35             switch (num3)
    36             {
    37                 case 5:
    38                     cout << "其中" << num1 << "本是5本的套餐";
    39                     break;
    40                 case 6:
    41                     cout << "其中"<<num1<<"本是5本的套餐剩下的一本单独买";
    42                     break;
    43                 case 7:
    44                     cout << "其中" << num1 << "本是5本的套餐剩下的买2本的套餐";
    45                     break;
    46                 case 8:
    47                     cout << "其中" << num1 - 1 << "本是5本的套餐其余的买4+4套餐";
    48                     break;
    49                 case 9:
    50                     cout << "其中" << num1 << "本是5本的套餐剩下的买4本的套餐";
    51                     break;
    52             }
    53 
    54         }
    55     }
    56 
    57 }

    思考:当我们把买5本书的优惠下调到21%时上面的算法就不成立了,不能以5为单位去算,本题我计算了一下11本的5+5+1,4+4+3,12本的552和444发现5的折扣很给力把

    只买1本的所谓亏损给赚回来了于是见5就合就可以了。

  • 相关阅读:
    log4j基本使用方法
    Spring MVC中页面向后台传值的几种方式
    JXL操作Excel
    模板
    url&视图
    Git for PyCharm
    ServletConfig和ServletContext
    Exception和IOException之间的使用区别
    java学习一目了然——异常必知
    java学习一目了然——IO
  • 原文地址:https://www.cnblogs.com/mtant/p/4430053.html
Copyright © 2011-2022 走看看