zoukankan      html  css  js  c++  java
  • 求最低价格

    #include <iostream>
    using namespace std;
    #define PRICE 8
    double discount[5]={0,0.05,0.1,0.2,0.25};
    
    double Caculate(int num1,int num2)        //计算该情况的价钱
    {
        double money,money1,money2;
        money1=(PRICE-PRICE*discount[num1-1])*num1;
        money2=(PRICE-PRICE*discount[num2-1])*num2;
        money=money1+money2;
        return money;
    }
    double Discount(int num)            //分情况讨论价钱
    {
        int k,yushu;
        double money1,money2,min;
        k=num/5;                    //取整
        yushu=num%5;                //取余
        min=num*PRICE;
        switch(k)
        {
            case 0:
                money1=(PRICE-PRICE*discount[num-1])*num;
                break;
            default:
                if(yushu==0)
                {
                    money1=(PRICE-PRICE*discount[4])*num;
                    return money1;
                }
                for(int i=1;i<(yushu+5);i++)
                {
                    money1=Caculate(i,(yushu+5)-i);
                    if(money1<min)
                        min=money1;
                }
                if(num>9)
                    money2=(k-1)*5*(PRICE-PRICE*discount[4]);
                else
                    money2=0;
                return min+money2;
        }
        return money1;
    }
    int main(int argc, char* argv[])
    {
        int booknum;
        double money;
        cout<<"请输入购买书籍的数量:";
        cin>>booknum;
        money=Discount(booknum);
        cout<<"最优惠的价格是"<<money<<""<<endl;
        return 0;
    }

  • 相关阅读:
    猫眼电影面试经历
    北京市-钟鼓楼
    vipkid 面试经历
    转转面试经历
    二维数组中的查找
    不用除法来实现两个正整数的除法
    牛客网面试经历
    9. Palindrome Number
    Spring 简介
    mysql8 安装配置教程
  • 原文地址:https://www.cnblogs.com/lq897897/p/5610590.html
Copyright © 2011-2022 走看看