案例2-2 小明都可以买什么

题目

编写一个智能购物计算小程序,在一家商店有书本、铅笔、橡皮、可乐、零食5种商品,商品价格如表

案例2-2 小明都可以买什么_第1张图片

假如你带了20元,且必须购买一本书,剩余的钱还可以购买哪种商品?可以购买几件,购买完后又能剩余多少钱?

个人思路:

1.设计一个菜单,给商品编号

2.需要利用switch语句进行判断

3.利用取余、取模求得可购买数量和剩余

代码实现:
import java.util.Scanner;

public class Example2_2 {
    public static void main(String[] args) {

        int pencil = 1;//铅笔
        int rubber = 2;//橡皮
        int cola = 3;//可乐
        int snacks = 5;//零食

        System.out.println("书本的价格是12元,你总共带了20元");
        System.out.println("1.铅笔的价格是1元");
        System.out.println("2.橡皮的价格是2元");
        System.out.println("3.可乐的价格是3元");
        System.out.println("4.零食的价格是5元");
        System.out.print("请输入你还想购入的商品编号:");

        Scanner sc=new Scanner(System.in);
        int x=sc.nextInt();

        switch(x)
        {
            case 1:
                System.out.println("购买完书本后还可以购买铅笔"+8/pencil+"支,还剩"+8%pencil+"元");
                break;
            case 2:
                System.out.println("购买完书本后还可以购买橡皮"+8/rubber+"块,还剩"+8%rubber+"元");
                break;
            case 3:
                System.out.println("购买完书本后还可以购买可乐"+8/cola+"瓶,还剩"+8%cola+"元");
                break;
            case 4:
                System.out.println("购买完书本后还可以购买零食"+8/snacks+"袋,还剩"+8%snacks+"元");
                break;

        }

    }
}

运行结果:
案例2-2 小明都可以买什么_第2张图片
案例2-2 小明都可以买什么_第3张图片
案例2-2 小明都可以买什么_第4张图片
案例2-2 小明都可以买什么_第5张图片

举一反三:

可改变题目条件,输入一个资金数目,然后选择一项商品,求得最多可买该商品多少件,剩余多少钱。

个人思路:
  1. 在原有基础上,设一个变量代表资金数

  1. 考虑特殊情况,需要判断资金是否足够最少买一个(在case中加入if语句进行判断)

代码实现:
import java.util.Scanner;

public class Example2_2_new {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);

        System.out.print("请输入你的资金数:");
        int w=sc.nextInt();
        int book = 12;//书本
        int pencil = 1;//铅笔
        int rubber = 2;//橡皮
        int cola = 3;//可乐
        int snacks = 5;//零食

        System.out.println("0.书本的价格是12元");
        System.out.println("1.铅笔的价格是1元");
        System.out.println("2.橡皮的价格是2元");
        System.out.println("3.可乐的价格是3元");
        System.out.println("4.零食的价格是5元");
        System.out.print("请输入你还想购入的商品编号:");
        int x=sc.nextInt();

        switch(x)
        {
            case 0:
                if(w-book<0) {
                    System.out.println("对不起,对于该商品,您的资金一个也买不起0.0");
                    break;
                }
                else
                System.out.println("您可以购买书本"+w/book+"本,还剩"+w%book+"元");
                break;
            case 1:
                if(w-pencil<0) {
                System.out.println("对不起,对于该商品,您的资金一个也买不起0.0");
                    break;
                }
                else
                System.out.println("您可以购买铅笔"+w/pencil+"支,还剩"+w%pencil+"元");
                break;
            case 2:
                if(w-rubber<0) {
                    System.out.println("对不起,对于该商品,您的资金一个也买不起0.0");
                    break;
                }
                else
                System.out.println("您可以购买橡皮"+w/rubber+"块,还剩"+w%rubber+"元");
                break;
            case 3:
                if(w-cola<0) {
                    System.out.println("对不起,对于该商品,您的资金一个也买不起0.0");
                    break;
                }
                else
                System.out.println("您可以购买可乐"+w/cola+"瓶,还剩"+w%cola+"元");
                break;
            case 4:
                if(w-snacks<0) {
                    System.out.println("对不起,对于该商品,您的资金一个也买不起0.0");
                    break;
                }
                else
                System.out.println("您可以购买零食"+w/snacks+"袋,还剩"+w%snacks+"元");
                break;

        }

    }
}

运行结果实例:

案例2-2 小明都可以买什么_第6张图片
案例2-2 小明都可以买什么_第7张图片
案例2-2 小明都可以买什么_第8张图片
  • 特殊情况:

案例2-2 小明都可以买什么_第9张图片

  • 细节

System.out.print("请输入你的资金数:");

一般情况下,请输入xxxxx:时使用print而不适用println排版更舒适。

你可能感兴趣的:(java)