课堂练习—最低价格

1.设计思想:首先在纸上从1开始计算找规律,发现当这个数依次减5后出现8时,买2套4卷不一样的书时价格是最便宜的,其他情况下都是买5卷不一样的,然后剩下小于5本的就按照折扣价格购买。

2.源程序

#include <iostream>
using namespace std;

void main()
{
    int n;
    int a=0,b=0;
    double sum;

    cout<<"请输入要买的书的本数:"<<endl;
    cin>>n;
    a=n/5;
    b=n%5;

    cout<<"最低价格为:";
    if(n==3)
    {
        sum=3*8*(1-0.1);
    }
    else
    {
        if(b==0)
        {
            sum=a*5*8*(1-0.25);
        }

        if(b==1)
        {
            sum=a*5*8*(1-0.25)+8;
        }

        if(b==2)
        {
            sum=a*5*8*(1-0.25)+2*8*(1-0.05);
        }

        if(b==3)
        {
            sum=(n-8)/5*5*8*(1-0.25)+4*2*8*(1-0.2);
        }

        if(b==4)
        {
            sum=a*5*8*(1-0.25)+4*8*(1-0.2);
        }
    }
    cout<<sum<<endl;
}

3.结果截图

4.总结

对于这个问题,找到规律,有了思路之后,问题就能轻而易举的解决了。

时间: 2025-01-17 13:31:12

课堂练习—最低价格的相关文章

课堂练习---最低价格买书

书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示: 本数 折扣 2 5% 3 10% 4 20% 5 25%根据购买的卷数以及本数,会对应不同折扣规则情况.单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠.设计算法能够计算出读者购买一批书的最低价格. 思路:首先算出1到10本的最低价格, 1本 8元 2本 15.2元 按照两本的折扣 (和上一个阶段差7.2元) 3本

课堂练习——计算法能够计算出读者购买一批书的最低价格。

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

课堂练习--计算购买一批书最低价格

1.设计思想 通过找规律发现,当购买数量大于5本时,有两种情况.第一种:如果数的最后一位的值为8,则这八本按两个四本来算,剩下的按五本一划分来算最低:第二种:数的最后一位的值不为8,则将数对五求余,求商,根据余数大小选择对应的价格,用商乘每5本对应的价钱最低. 2.代码实现 1 import java.util.Scanner; 2 import java.util.InputMismatchException; 3 public class Cheicp { 4 5 public static

如何购买一批书使其最低价格

题目要求: 某书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元,具体折扣如下所示: 本数                  折扣 2                       5% 3                       10% 4                       20% 5                       25% 根据购买的卷数以及本数,会对应不同折扣规则情况.单数一本书只会对应一个折扣规则,例如购买了两本卷

算法-书的最低价格

一.实验题目: 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示:                               本数                  折扣                                   2                       5%                                   3                       10%     

最低价格

题目概要:<哈利波特>系列书籍共5部,单买每本8元,2本一套买(各不相同为一套,下同),享5%的优惠,以此类推,3本10%,4本20%,5本25%. 要求:输入要买的书籍,求出最优购买策略,并求出最低价格. #include<iostream> using namespace std; void main() { double a,b; int n; cout<<"请输入要购买书籍的总数:"<<endl; cin>>n; a=

求购买一批打折书的最低价格

设计思想: 前五本书的最低价已经计算出,每增加一本书,所花的钱就会增加 8  7.2   6  4.4或 4.4 元 如此循环下去 源代码: import java.util.Scanner; public class minMoney { public static void main(String args[]){ int booknumber=0; double money=0; Scanner in=new Scanner(System.in); System.out.print("你要

购买《哈利波特》系列书籍的最低价格

一.题目: 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示:                               本数                  折扣                                   2                       5%                                   3                       10%       

设计算法能够计算出读者购买一批书的最低价格

一.题目:      n书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示,单独一卷售价8元, 具体折扣如下所示 本数 2,折扣5%:本数 3,折扣10%:本数4 ,折扣20%:本数5,折扣25%:根据购买的卷数以及本数,会对应不同折扣规则情况.单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠. 二.解题思路: 通过对6本书.7本书.8本书.9本书的分析得到当本数为6.7.9时,最便宜的组合为5+1,5+