首页 > 技术文章 > 【作业】Demo4

love61 2019-11-17 19:56 原文

题目4(综合)

某商场购物可以打折,具体规则如下:

普通顾客购不满100元不打折,满100元打9折;

会员购物不满200元打8折,满200元打7.5折;

不同打折规则不累加计算。

请根据此优惠计划进行购物结算,键盘录入顾客的类别(0表示普通顾客,1表示会员)和购物的折前金额(整数即可),输出应付金额(小数类型)。

训练提示

  1. 使用什么方式让用户输入内容?

  2. 使用哪种if语句的格式对信息作出判断?

解题方案

  1. 使用Scanner键盘录入和if..else判断语句的嵌套使用来完成。

操作步骤

  1. 键盘录入会员类别和购物金额。

  2. 先使用if-else判断顾客类别。

  3. 在不同的顾客类别中再使用if-else语句判断购物金额。

  4. 输出结果。

上代码:

public static void main(String[] args) {
        /*
         * 某商场购物可以打折,具体规则如下:
        普通顾客购不满100元不打折,满100元打9折;    
        会员购物不满200元打8折,满200元打7.5折;    
        不同打折规则不累加计算。
        请根据此优惠计划进行购物结算,键盘录入顾客的类别(0表示普通顾客,1表示会员)和
        购物的折前金额(整数即可),输出应付金额(小数类型)。
         * */
        /*
         *       分析
         *   <100 不打折    >=100 0.9
         *   <200 0.8    >=200 7.5
         * */
        
        Scanner sc = new Scanner(System.in);
        double price=0;
        //提示用户,是普通顾客还是会员
        System.out.println("是会员输入数字:1"+"\t"+"是普通顾客输入:0");
        int n1 = sc.nextInt();
        //提示用户消费多少金额
        System.out.println("你总共消费多少元:");
        double n2 = sc.nextDouble();
        if(n1 ==0 && n2<100) {
            price=n2;
            System.out.println("你是普通顾客,商品金额小于100元,不打折!"+"你需要支付"+price+"元"+"\n");
            //System.out.println("支付成功!");
        }else if(n1==0 && n2>=100){
            price=n2*0.9;
            System.out.println("你是普通顾客,商品金额大于100元,打九折!"+"你需要支付"+price+"元");
        }else if(n1 ==1 && n2<200) {
            price=n2*0.8;
            System.out.println("你是会员,商品金额小于200元,打八折!"+"你需要支付"+price+"元");
        }else if(n1==1 && n2>=200) {
            price=n2*0.75;
            System.out.println("你是会员,商品金额大于200,打七五折!"+"你需要支付"+price+"元");
        }
    }
}

 

推荐阅读