博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
最优惠买哈利波特书
阅读量:5251 次
发布时间:2019-06-14

本文共 1336 字,大约阅读时间需要 4 分钟。

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. 总结

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

转载于:https://www.cnblogs.com/zchenjian/p/4490630.html

你可能感兴趣的文章
数组方法
查看>>
ACM学习历程—HDU 5073 Galaxy(数学)
查看>>
反弹SHELL
查看>>
关闭Chrome浏览器的自动更新和升级提示
查看>>
移动、尺寸改变
查看>>
缓存三大问题
查看>>
poj2255Tree Recovery【二叉树重构】
查看>>
(21)模型层 -ORM之msql 聚合查询,F和Q(与、或、非查询)、分组查询
查看>>
tcpcopy 流量复制工具
查看>>
HttpClient 教程 (五)
查看>>
vue和react的区别
查看>>
PHP文件包含漏洞利用
查看>>
document.documentElement和document.body区别介绍
查看>>
Cocos2d-x中Vector使用
查看>>
第十一次作业
查看>>
mybatis CRUD
查看>>
负载均衡策略
查看>>
Go 语言的基本数据类型
查看>>
陈伯雄第一次作业小结
查看>>
Python day1_Base1笔记
查看>>