标签:
书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元。
具体折扣如下所示:
本数 折扣
2 5%
3 10%
4 20%
5 25%
根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,
一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。 设计算法能够计算出读者购买一批书的最低价格。
一、设计思路
列举出买十本的所有情况:
1.一本的时候不打折扣,价钱为 8
2.两本的时候买两本价最低,价钱为 15.2
3.三本的时候买三本价最低,价钱为 21.6
4.四本的时候买四本价最低,价钱为 25.6
5.五本的时候买五本价最低,价钱为 30
6.六本的时候分一本和五本价最低,价钱为 38
7.七本的时候分两本和五本价最低,价钱为 45.2
8.八本的时候分四本和四本价最低,价钱为 51.2
9.九本的时候分四本和五本价最低,价钱为 55.6
10.十本的时候分五本和五本价最低,价钱为 60
按照上面的情况,十本书一个循环,按此类推,算出最低价钱
二、程序源代码
package test; import java.util.*; public class Book{ public static void main(String args[]) { Scanner in = new Scanner(System.in); System.out.print("请输入要买的书本数量:"); int n=in.nextInt(); int y = n % 10; int z = n/10 - y/10; double m1 = z * 60; double m2 = 0; if(y==1) { m2 = 8; } else if(y==2) { m2 = 15.2; } else if(y==3) { m2 = 21.6; } else if(y==4) { m2 = 25.6; } else if(y==5) { m2 = 30; } else if(y==6) { m2 = 38; } else if(y==7) { m2 = 45.2; } else if(y==8) { m2 = 51.2; } else if(y==9) { m2 = 55.6; } double money = m1+m2; System.out.println("购买"+n+"本书的最低价格为:"+money); } }
三、结果截图
标签:
原文地址:http://www.cnblogs.com/crazy-soul/p/5552621.html