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


    实验背景  

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

        本数 折扣 2 5%         3 10%         4 20%            5 25%

        根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。       设计算法能够计算出读者购买一批书的最低价格。

    一、设计思想此问题可以折算为如何取余问题

        当购买1-5本书时,分别按原价、5%、10%、20%、25%的折扣即可。

        当购买6-10本书时,购买一个五本的,再按分别的折扣购买剩下的书。(购买8本书时,购买两个四本的)

        当购买10本以上时,对其进行分解,除以5取余再加5计算折扣即可。

    二、代码实现

    //买书价格最低
    //信1405-1班   20142966  黄伟鹏
    import java.util.Scanner;
    public class main {
    
        public static void main(String[] args) 
        {
            int number,i,j=0; //i是余数部分,j是整数部分
            double money=0;
            Scanner in=new Scanner(System.in);
            System.out.println("请输入要买的书籍数:");
            number=in.nextInt();
            i=number%5;
            if(i==0)
            {
                money=number*8*0.75;
            }
            else if(i==1)
            {
                money=(number-1)*8*0.75+8;
            }
            else if(i==2)
            {
                money=(number-2)*8*0.75+15.2;
            }
            else if(i==3)
            {
                money=(number-8)*8*0.75+51.2;
            }
            else if(i==4)
            {
                money=(number-4)*8*0.75+25.6;
            }
            System.out.println("读者购买一批书的最低价格是"+money+"元");
        }
    
    }

    三、程序截图

    四、个人总结

    此类问题只要找到规律即可。

  • 相关阅读:
    html集合
    pyautocad
    CAD 批量提取点坐标,实现坐标的快速提取
    CAD
    python模块
    set,get,setter
    1 Http的表皮
    (6)小项目------完善增删改查的操作
    SSM学习笔记(6)---拦截器
    SSM学习笔记(5)-CGLIB动态代理
  • 原文地址:https://www.cnblogs.com/xiaoabu/p/5561789.html
Copyright © 2020-2023  润新知