哈利波特书价问题

本文介绍了一种计算购买《哈利波特》系列书籍最低价格的算法。通过分析不同数量书籍对应的折扣,提出了一套购买策略,确保消费者能以最优价格完成购买。

题目要求:

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

                               本数                  折扣
                                   2                       5%
                                   3                       10%
                                   4                       20%
                                   5                       25%
 
   根据购买的卷数以及本数,会对应不同折扣规则情况。单数一本书只会对应一个折扣规则,例如购买了两本卷1,一本卷2,则可以享受5%的折扣,另外一本卷一则不享受优惠。
  设计算法能够计算出读者购买一批书的最低价格。
实验代码:
package 哈利波特书;

public class aa {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int a;
		double b,c;
		System.out.println("本数    最低价   ");
		for(a=1;a<22;a++)
		{
			if(a%5==0)
			{
				b=0;
			}
			else if(a%5==1)
			{
				b=8*1;
			}
			else if(a%5==2)
			{
				b=8*2*0.95;
			}
			else if(a%5==3)
			{
				b=8*3*0.9;
			}
			else
			{
				b=8*4*0.8;
			}
			
			
			if(a%5!=3||a<5)
			{
				c=a/5*30+b;
			}
			else
			{
				c=(a/5-1)*30+2*8*4*0.8;
			}
				System.out.print(a+"   ");
				System.out.println(c);
		}
	}

}

实验结果:

实验思路:

  当买书本数小于五时不要买同样的这样优惠最多;

  当买书本数为六时,买五本一套的,在另外买一本便宜;

  当买书本数为七时,买五本一套的,在另外买两本便宜;

  当买书本数为八时,买两个四本不同的最便宜;

  当买书本数为九时,买五本一套的,在另外买四本便宜;

  当买十本或是十本以上时尽量满足五五,如果有八就尽可能凑四四;

 

转载于:https://www.cnblogs.com/feifeishi/p/4488724.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值