zoukankan      html  css  js  c++  java
  • “买书方案”分析报告

    “买书方案”分析报告

    一、设计思想

    1.买书可以分为不同的情况,五本一下肯定是越多越便宜,五本以上,就要搭配着买。比如买6本,就有5+1,4+2,3+3三种买法。

    2.要买6,7,9,本时,都是5+*是最合适的买法,只有买8本的时候,是4+4最合适。

    3.所以就把买书的方案分成小块,用要买的本数除以10取余数,因为10的整数倍肯定是按五本买最合适,剩下的1-9本,除了8之外,其他的都是5+*模式,再把两部分的钱加起来。就是总钱数。

     

    二、代码实现

    #include<iostream>
    using namespace std;
    
    void main()
    {
        int num;
        double mon1,mon2,all;
    
        cout<<"请输入要买的本数:"<<endl;
        cin>>num;
    
        int n1,n2;
    
        n1=num/10;
        n2=num%10;
    
        mon1=40*0.75*2*n1;
    
        switch(n2)
        {
        case 1:{mon2=1*8;break;}
        case 2:{mon2=2*8*0.95;break;}
        case 3:{mon2=3*8*0.9;break;}
        case 4:{mon2=4*8*0.8;break;}
        case 5:{mon2=5*8*0.75;break;}
        case 6:{mon2=5*8*0.75+8;break;}
        case 7:{mon2=5*8*0.75+8*2*0.95;break;}
        case 8:{mon2=4*8*0.8*2;break;}
        case 9:{mon2=5*8*0.75+4*8*0.8;break;}
        case 0:{mon2=0;}
        }
    
        all=mon1+mon2;
    
        cout<<"需要的钱数为:"<<all<<endl;
    }

    三、实现截图

     

    四、个人总结

           这次收获最大的应该就是这种列举法,把情况都列举出来,然后根据数学的分析,得出普遍的规律,再通过代码实现出来。因为情况比较多,所以写代码之前先把每种情况都写到纸上,整理好了再去编代码。

  • 相关阅读:
    videojs 隐藏videobar
    nw 系统托盘的添加方式,以及ajax失效问题
    nw 注册快捷键
    bg-script 错误信息显示,以及global
    input 文件上传
    git stash,git cherry-pick
    安装Laravel
    nw + iframe嵌入page 滚动条问题
    require('nw.gui') 失效问题
    dell 交换机 双链路冗余
  • 原文地址:https://www.cnblogs.com/meimiaozi/p/4499115.html
Copyright © 2011-2022 走看看