课堂练习--“最低价”

设计思想:

①首先不同的书才能享受折扣,所以最低价不考虑相同的书。

②因为只有五种书并且五本能够享受最大的优惠,所以尽量都以五本为单位去买。

③采用商数和余数来控制,用数量总数除以5所得商数和余数,用商数乘5本的折扣价加上余数的折扣价就是最低价格。

④需要注意余数为三时,四本和四本的折扣价三本和五本的折扣价要低,所以把这种情况单独写出来就可以了。

代码实现:

import java.util.*;
public class Leastpriceproject {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入需要购买的数量:");
        int num = input.nextInt();
        int remainder = num%5;
        int quotient = num/5;
        double price = 0;
        input.close();
        
        if(quotient == 0)
        {
            if(remainder == 1){price=8;}
            else if(remainder == 2){price=15.2;}
            else if(remainder == 3){price=20.6;}
            else if(remainder == 4){price=25.6;}
            else if(remainder == 5){price=30;}
        }
        
        else if(remainder == 3)
        {
            price=(quotient-1)*30+51.2;
        }
        
        else
        {
            if(remainder == 1){price=quotient*30+8;}
            else if(remainder == 2){price=quotient*30+15.2;}
            else if(remainder == 4){price=quotient*30+25.6;}
            else if(remainder == 5){price=quotient*30+30;}
        }
        
        System.out.println("购买" + num + "册的最低价格是" + price + "元");

    }

}

实验截图:

总结:这个题目就是个最简单的找规律题,所以只要找到规律就迎刃而解了。

 

posted @ 2016-05-30 15:19  mrferry  阅读(151)  评论(0编辑  收藏  举报