• 课堂作业-购书问题


    1.题目要求:

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

                                   本数                   折扣

                                      2                    5%

                                      3                    10%

                                      4                    20%

                                      5                    25%

    根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。
    设计算法能够计算出读者购买一批书的最低价格。
     
     
    2.设计思想:
             
    购书数量 优惠价格 最低价格
    1 0 8
    2 0.8   15.2
    3 2.4 21.6
    4 6.4 25.6
    5 10 30
    6=5+1 10 38
    6=4+2 7.2 40.8
    7=5+2 10.8 35.5
    7=4+3 8.8 47.2
    8=5+3 12.4 51.6
    8=4+4 12.8 51.2

    由表可知,逢8特殊。

    3.程序源代码:

    import java.util.*;
    public class BuyingBooks {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            Scanner sc=new Scanner(System.in);
            double p=0;//购买总价格,初始化为0
            int c;//购买总数量
            System.out.println("请输入购书数量:");
            c=sc.nextInt();
            
            if(c%5==1)
            {
                p=c/5*0.75*5*8+8*1;
            }
            else if(c%5==2)
            {
                p=c/5*0.75*5*8+8*2*0.95;
            }
            else if(c%5==3&&c>5)
            {
                p=(c/5-1)*0.75*5*8+2*8*4*0.8;
            }
            else if(c%5==3&&c<5)
            {
                p=c*8*0.9;
            }
            else if(c%5==4)
            {
                p=c/5*0.75*5*8+8*4*0.8;
            }
            else
            {
                p=c/5*0.75*5*8;
            }
            System.out.println("需要支出的最少金额为:"+p+"元");
        }
    }

    4.结果截图:

    5.实验总结:

    实验看起来复杂,但是只要仔细思考找准题意很好解决。

  • 相关阅读:
    TeX中的引号
    竖式问题
    蛇形填数
    开灯问题
    排列
    分数化小数
    子序列的和
    cookie
    post请求
    get请求
  • 原文地址:https://www.cnblogs.com/jianglingjun/p/5556473.html
Copyright © 2020-2023  润新知