首页 > 编程语言 >购物系统分析与实现 - Java编程案例

购物系统分析与实现 - Java编程案例

时间:2023-08-29 10:32:34浏览次数:51  
标签:count Java 编程 购物 System 系统分析 购买 println out


目录

1. 购物系统分析

2. 实现购物系统

2.1 程序入口

2.2 菜单显示

2.3 用户输入

2.4 计算购买数量和剩余金额

2.5 结果输出

3. 执行购物系统

总结


简介:本文将介绍一个简单的购物系统的实现,使用Java编程语言来实现一个基于控制台的购物系统。通过这个实例,我们可以学习如何进行用户输入、条件判断和基本的数值计算。

1. 购物系统分析

首先,我们对购物系统进行分析,明确其功能和流程。根据代码,我们可以看出购物系统有以下特点:

  • 用户有一定的预算(20元);
  • 必须购买一本书(定价为12元);
  • 用户可以选择购买其他商品(铅笔、橡皮、可乐、零食);
  • 根据用户的选择,计算购买商品的数量和剩余金额。

2. 实现购物系统

import java.util.Scanner;

public class WhatBuy {
    private static int money = 20; // 定义携带金额
    private static int book = 12; // 定义书本价格
    private static int pen = 1; // 定义铅笔价格
    private static int rubber = 2; // 定义橡皮价格
    private static int kola = 3; // 定义可乐价格
    private static int food = 5; // 定义零食价格

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        menu();//调用菜单

        System.out.println("请输入其他需要购买的商品序号:");
        int num = scanner.nextInt(); // 键盘录入

        int count = 0; // 定义统计个数
        int balance = 0; // 定义余额初始值

        switch (num) {
            case 1:
                count = (money - book) / pen;
                balance = money - book - pen * count;
                System.out.println("购买完书本后还可以购买铅笔 " + count + "支,剩余金额 " + balance);
                break;
            case 2:
                count = (money - book) / rubber;
                balance = money - book - rubber * count;
                System.out.println("购买完书本后还可以购买橡皮 " + count + "块,剩余金额 " + balance);
                break;
            case 3:
                count = (money - book) / kola;
                balance = money - book - kola * count;
                System.out.println("购买完书本后还可以购买可乐 " + count + "瓶,剩余金额 " + balance);
                break;
            case 4:
                count = (money - book) / food;
                balance = money - book - food * count;
                System.out.println("购买完书本后还可以购买零食 " + count + "包,剩余金额 " + balance);
                break;
            default:
                System.out.println("无效的选择!!!");
                break;
        }
    }

    private static void menu() {
        System.out.println("书本的价格为:" + book + "元,您总共有 " + money + "元");
        System.out.println("1.铅笔的价格为:" + pen + "元");
        System.out.println("2.橡皮的价格为:" + rubber + "元");
        System.out.println("3.可乐的价格为:" + kola + "元");
        System.out.println("4.零食的价格为:" + food + "元");
    }
}

2.1 程序入口

在代码中,我们可以看到main方法是程序的入口点。它调用了其他方法来实现购物系统的各个功能。

2.2 菜单显示

menu方法中,我们定义了一个菜单,显示了可供选择的商品和其价格。这样用户可以清楚地了解可以购买的商品和价格。

2.3 用户输入

使用Scanner类,我们可以接收用户的输入。用户可以输入购买的商品序号,然后程序根据用户的选择进行相应的处理。

2.4 计算购买数量和剩余金额

switch语句中,根据用户选择的商品序号,我们计算购买该商品的最大数量(count)和购买完商品后的剩余金额(balance)。这里使用了基本的数值计算和条件判断。

2.5 结果输出

最后,根据计算结果,我们将购买商品的数量和剩余金额输出给用户,提供清晰的信息。

3. 执行购物系统

用户通过控制台输入选择的商品序号,系统会计算购买数量和剩余金额,并将结果输出给用户。用户可以根据需要继续购买其他商品,或者结束购物。

总结

通过这个简单的购物系统实例,我们学习了如何使用Java编程语言进行用户输入、条件判断和基本的数值计算。购物系统是一个常见的应用场景,通过实现购物系统,我们巩固了这些基本的编程概念。

希望本文对你理解购物系统的实现有所帮助。如果你对购物系统或者其他Java编程方面有任何问题或建议,请随时提出。

参考资料:

希望本文对你的学习和实践有所启发。感谢阅读!如果有任何问题或需求,欢迎评论区留言!

标签:count,Java,编程,购物,System,系统分析,购买,println,out
From: https://blog.51cto.com/itchenhan/7273071

相关文章

  • 打印图形:三角形、圆形和正方形 - Java编程案例
    目录1.打印三角形2.打印圆形3.打印正方形总结简介:本文将介绍如何使用Java编程语言打印出不同的图形,包括三角形、圆形和正方形。我们将使用嵌套循环和基本的数学计算来实现这些图形的打印。1.打印三角形首先,让我们来打印一个简单的三角形。在代码中,我们使用了一个嵌套的循环来控......
  • 张三坐电梯的计算问题 - Java编程实现
    摘要:本文介绍了一个关于张三坐电梯的计算问题,并通过Java代码实现了解决方案。在张三学校的教学楼前排了很多人,他的前面有n个人在等电梯。电梯每次可以乘坐12人,每次上下需要的时间为4分钟(上需要2分钟,下需要2分钟)。现在,我们需要帮助张三计算还需要多少分钟才能乘电梯到达楼上。我们......
  • java实现的类似于sql join操作的工具类,通用递归,最低需要java8
    直接上代码,缺包的自行替换为自己项目中存在的importjava.util.ArrayList;importjava.util.Collection;importjava.util.HashMap;importjava.util.HashSet;importjava.util.List;importjava.util.Map;importjava.util.Set;importjava.util.function.BiConsumer;i......
  • JAVA编译准备
    1.JAVA语言特点1.Java语言是面向对象的(oop)2.Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证3.Java语言是跨平台性的。[一个编译好的.class文件可以在多个系统下运行]4.Java语言是解释型语言解释型语言:java、javascript、P......
  • Java底层起步
    <h3style="text-align:center;">Java底层起步</h3>Java介绍什么是面向对象?例如:小戴正在做饭时,发现没酱油了,对着外面的朋友小张说,小张你去买瓶酱油,然后小张给楼下超市的小王打电话,让送了一瓶酱油上来。在上述的过程中,从面向对象的角度来讲,其强调的是谁来做这个事,而不是这个事......
  • Java的部分八股(随便记着玩)
    Java的部分八股1.Hashmap和Hashtable的区别1.安全性hashtable是线程安全的,hashmap是非线程安全的但是hashmap的性能高于hashtable多线程下使用hashmap需要使用一个线程安全的集合2.容量部分Hashmap的初始容量为16,hashtable的初始容量为11,填充因子默认都是0.75Hashmap扩容......
  • ArcGIS Javascript sdk中API keys 的说明
    ArcGISJavascriptsdk中APIkeys的说明关于ArcGIS的APIkey具体使用ArcGIS有那些底图用到了APIkeys,那些没有用到可以参考下面表格,最新改动请参考官网BasemapsforusewithAPIkeysUseofthesebasemapsrequiresanArcGISDevelopersubscription.Tolearnmoreabout......
  • JavaScript 中的变量声明与赋值
    在计算机编程中,使用名称(或标识符)来表示值是最基本的技术之一。将名称与值绑定为我们提供了一种在程序中引用值并利用它们的方式。当涉及到绑定名称与值时,我们通常称之为将值赋给变量。术语“变量”暗示了新的值可以被赋给它,这意味着与变量关联的值在程序执行过程中可能会改变。如......
  • JavaWeb-cnblog
    javaweb基础HTML和CSS<fontcolor=""size=""face=""></font><br>//换行<hr>//无序//有序//超链接//Javaweb相对路径表//表格//行//列1.11.2..tr行标签th表头标签td单元格标签b加粗cellspacing单元格间距colspan=“#”表跨#列合并row......
  • Go语言并发编程实践
    Go语言是一门现代化的编程语言,以其独特而强大的并发模型而著名。Go通过轻量级的协程(goroutine)和通信机制(channel)实现了高效的并发编程。本篇博客将介绍Go语言的并发模型,讨论并发编程的基本概念和常用模式,并探索如何利用Go的并发特性来提升程序性能和开发效率。并发编程的重要性......