• 最优惠买哈利波特书


    1. 题目:

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

    本数 折扣 2    5%

                 3    10%

                 4    20%

                 5    25%

          根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。

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

          要求将设计思想、代码实现、实现截图、个人总结以博文的形式发表。(截止日期2015-5-12晚18:00)

    2. 设计思想:

          如果购买的本书小于等于5本,则有多少本买多少本不一样的。如果大于5本,则需要考虑。比如6本,是3 3优惠,还是5 1优惠等等。没5个为一个循环,所以只需要考虑6到10就可以了。其中6 7 9都是5和余数最省钱。而8则是4 4最省钱,所以这是一个例外,需要考虑。

    3. 源代码

    import java.util.Scanner;
    
    
    public class buyHT {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            int m,b,a;
            double c;
            System.out.print("请输入要购买哈利波特的本数: ");
            Scanner sc=new Scanner(System.in);
            m=sc.nextInt();
            a = m%5;
            b=a+5;
            switch(b)
            {
                case 5:c=(m/5)*30;
                System.out.println("需要的最少钱数为:"+c);break;
                case 6:c=(m/5)*30+8;
                System.out.println("需要的最少钱数为:"+c);break;
                case 7:c=(m/5)*30+(16*0.95);
                System.out.println("需要的最少钱数为:"+c);break;
                case 8:c=(m-8)/5*30+51.2;
                System.out.println("需要的最少钱数为:"+c);break;
                case 9:c=(m/5)*30+(32*0.8);
                System.out.println("需要的最少钱数为:"+c);break;
            }
            
        }
    
    }
      

    4. 运行截图

    5. 总结

          通过这次编程,我学会了多方面考虑,虽然咋一看很简单,但是里面有很多曲折。我们需要仔细考虑

  • 相关阅读:
    OpenGL纹理映射总结
    研究生常用网站:
    Oracle 11g,10g数据库软件下载地址
    <转>乔布斯羡慕嫉妒恨的人:Android之父安迪·鲁宾
    VC6里面的中文名字或者注释复制乱码解决
    基于CentOs的Hadoop集群全分布式部署<转>
    centos架设FTP服务器
    centos 卸载 jdk
    ESX的 企业版许可证
    vsftpd的 553 Could not create file
  • 原文地址:https://www.cnblogs.com/zchenjian/p/4490630.html
Copyright © 2020-2023  润新知