设计思路:(1)先枚举购买1-10本时所需要的花费。我们发现买8本的时候4+4比5+3更优。其他情况均为5+最优。
(2)我们再把实际购买的本书来取余5,若等于3,则按5+.....+5+4+4算。
(3)若等于其他值就按5+算.
源代码:
import java.util.Scanner; public class SaleHaripoter { public static void main(String args[]) { int price=8;double money=0; Scanner sc=new Scanner(System.in); System.out.println("请输入购买的数量:"); int qty=sc.nextInt(); if(qty>=0) { if(qty%5==1) { money=(qty/5)*(5*price*0.75)+price; } else if(qty%5==2) { money=(qty/5)*(5*price*0.75)+price*2*0.95; } else if(qty%885==3) { money=(qty/5-1)*(5*price*0.75)+2*price*4*0.8; } else { money=(qty/5)*(5*price*0.75)+4*price*0.8; } } else { System.out.print("输入有误,请重新输入!"); System.exit(0); } System.out.print("最少需支付:"+money+"元"); } }
程序截图:
时间: 2024-10-12 19:05:23