码迷,mamicode.com
首页 > 其他好文 > 详细

课堂练习(卖书问题)

时间:2016-06-02 09:53:57      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

设计思想:

通过简单的枚举计算,发现只有在   买书数=3+5*n(n>0)时才会有特殊情况产生,其他情况均一致,所以就利用switch语句对 买书数除5的余数进行判断,进行不同的分类计算,其中当余数为3时进行买书数是否大于5的判断,进行计算;

程序代码:

package text;
import java.util.Scanner;
public class Halibote {
    public static double money(int m0,int m1){
        double money=0;
        switch(m0){
        case 0:
            money=m1*8*5*0.75;
            break;
        case 1:
            money=m1*8*5*0.75+8;
            break;
        case 2:
            money=m1*8*5*0.75+8*2*0.95;
            break;
        case 3:
        {
            if(m1==0)
            {
                money=m1*8*5*0.75+8*3*0.9;
            }
            else
            {
                money=(m1-1)*8*5*0.75+8*4*0.8*2;
            }
            break;
        }
        case 4:
            money=m1*8*5*0.75+8*4*0.8;
            break;
            default:
                break;
        }
        return money;
    }
    public static void main(String args[]){
        Scanner in=new Scanner(System.in);
        int n;
        System.out.println("请输入购书总数:");
        n=in.nextInt();
        int m0,m1;
        m0=n%5;//按照五本一组多出来的数目
        m1=n/5;
        double money;
        money=money(m0,m1);
        System.out.println(money);
    }
}

运行结果截图:

技术分享技术分享技术分享技术分享技术分享

个人感想:

程序设计有时需要自己事前进行一些枚举计算方便进行寻找规律,进而利用规律编程。

课堂练习(卖书问题)

标签:

原文地址:http://www.cnblogs.com/dawn-sky/p/5551898.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!