要求:
n书店针对《哈利波特》系列书籍进行促销活动,一共5卷,用编号0、1、2、3、4表示,单独一卷售价8元, 具体折扣如下所示:
本数 折扣
2 5%
3 10%
4 20%
5 25%
n根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。
n设计算法能够计算出读者购买一批书的最低价格。
设计思路:
因为买八本的时候折扣并不是买五本最少的,而是4+4,所以在每个被八整除的时候都需要单独计算。
源代码:
import java.util.*; import javax.swing.*; public class Haripoter { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("请输入购买数量(本):"); Scanner sca = new Scanner(System.in); int num = sca.nextInt(); double price = 0; System.out.println("总价为:"); if(num%8==0) { price = (num/8)*51.2; System.out.println(price+"元"); } if(num%8==1) { price = (num/5)*30+8; System.out.println(price+"元"); } if(num%8==2) { price = (num/5)*30+15.2; System.out.println(price+"元"); } if(num%8==3) { price = (num/5)*30+21.6; System.out.println(price+"元"); } if(num%8==4) { price = (num/5)*30+25.6; System.out.println(price+"元"); } if(num%8==5) { price = (num/5)*30+30; System.out.println(price+"元"); } if(num%8==6) { price = (num/5)*30+38; System.out.println(price+"元"); } if(num%8==7) { price = (num/5)*30+45.2; System.out.println(price+"元"); } } }
结果截图: