• 买书最低价问题


    设计思路

    根据计算可看出以下规律:

      买6本书时,买5本一套和单买1本是最低价。

      买7本书时,买5本一套和2本一套是最低价。

      买8本书时,买两套4本的是最低价。

      买9本书时,买5本一套和4本一套是最低价。

    所以当买书的数量mol5余3时是特殊情况,其余情况都有规律可循。

    当余3时有两种情况。

      第一种情况是只买3本,直接输出买3本一套的价钱就OK。

      第二种情况可以是买8本、13本、18本……买书的数量先减去8计算买5本一套的价钱后再加上买两套4本的价钱即是最低价。

    源程序代码

     1 #include <iostream>
     2 using namespace std;
     3 
     4 void main()
     5 {
     6     int n,a,b;
     7     double min;
     8     cout<<"请输入购买书的数量:";
     9     cin>>n;
    10     a=n%5;
    11     if (a==0)
    12     {
    13         min=(n-a)/5*(8*5)*0.75;
    14     }
    15     if (a==1)
    16     {
    17         min=(n-a)/5*(8*5)*0.75+8;
    18     }
    19     if (a==2)
    20     {
    21         min=(n-a)/5*(8*5)*0.75+15.2;
    22     }
    23     if (a==3)
    24     {
    25         if (n==3)
    26         {
    27             cout<<"最低价格是:21.6"<<endl;
    28             exit(0);
    29         }
    30         min=(n-8)/5*(8*5)*0.75+51.2;
    31     }
    32     if (a==4)
    33     {
    34         min=(n-a)/5*(8*5)*0.75+25.6;
    35     }
    36     cout<<"最低价格是:"<<min<<endl;
    37 }


    运行结果截图

    编程总结

    解决该问题编程不是首要难题,利用数学方法该怎么计算是主要的难点,先利用数学思想考虑问题,只要思路对了,编程过程很简单。所以编程之前需要有足够的时间考虑问题!

  • 相关阅读:
    meego API
    linux的文件cache导致写文件消耗大量内存
    系统内存不断消耗 导致系统停滞(表面像死机) 但又找不到内存泄漏点
    C常用的LinuxC语言函数库
    GUI
    java 集合类结构图
    接口到底是个什么玩意
    抽象类到底是个什么玩意
    异常
    IO流
  • 原文地址:https://www.cnblogs.com/BUANG/p/4490840.html
Copyright © 2020-2023  润新知