【Java基础】评委打分、超市收银管理【案例】

2024-02-18 13:59

本文主要是介绍【Java基础】评委打分、超市收银管理【案例】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

💟作者简介:大家好呀!我是路遥叶子,大家可以叫我叶子哦!❣️    
📝个人主页:【路遥叶子的博客】
🏆博主信息:四季轮换叶,一路招摇胜!


        专栏

       【Jav基础】

       【数据结构-Java语言描述】

🐋希望大家多多支持😘一起进步呀!~❤️
🌈若有帮助,还请【关注点赞收藏】,不行的话我再努力努力呀!💪
————————————————
⚡版权声明:本文由【路遥叶子】原创、在CSDN首发、需要转载请联系博主。
🍁想寻找共同成长的小伙伴,请点击【Java全栈开发社区】

目录

🐋评委打分

🐋超市收银管理(V3)

 🌲 知识讲解—多位补0操作

🌲 超市收银管理—代码实现

嘿,朋友!今天的干货你填满了吗?赶紧试试检验检验自己吧!

如果文章对您有帮助,就拿起小手赶紧给博主点赞💚评论❤️收藏💙 一下吧~~~赶紧动起来,让我们一起加油学习吧! 


💙 💜 ❤️ 💚💙 💜 ❤️ 💚💙 💜 ❤️ 💚💙 💜 ❤️💙 💜 ❤️ 💚💙 💜 ❤️ 💚💙 💜 ❤️ 💚

🐋评委打分

题干:在编程竞赛中,有6个评委为参赛的选手打分,打分的分数范围为0-100的整数分。

选手的最后得分规则为:

去掉一个最高分,再去掉一个最低分,

其余4个分数的平均值就是选手最终分数。(不考虑小数部分)

打印结果如下:

今日(20xx-xx-xx)6位评委的分数分别为:93、24、54、78、99、69

去掉一个最高分99、去掉一个最低分24

最终得分为:73.5分

建议日期补0

分析:

  1. 定义6个Int变量保存随机数
  2. 随机数范围 0~100  包含0,包含100
  3. 最终分数 = (6个数的和-最高分-最低分)/4.0
  4. 设置年:Year+1900 ,设置月: month+1
  5. 补0:   x<=9?”0”+x:x+”” ;

代码实现:

public static void main(String[] args) {//1、数据准备//1.1、定义int变量保存评委分、最高分、最低分int p1,p2,p3,p4,p5,p6,max=Integer.MIN_VALUE,min=Integer.MAX_VALUE;//1.2、定义随机数变量Random r = new Random();//1.3、定义变量保存最终得分double finalScore;//1.4、定义变量保存日期Date d = new Date();//1.5、定义变量保存拼接后的日期字符串String dateStr="";//1.6、定义字符串,保存最终展示的所有内容String result="";//2、数据运算//2.1、生成6个随机分数保存到评分中p1 = r.nextInt(101);p2 = r.nextInt(101);p3 = r.nextInt(101);p4 = r.nextInt(101);p5 = r.nextInt(101);p6 = r.nextInt(101);//System.out.println(p1+"\t"+p2+"\t"+p3+"\t"+p4+"\t"+p5+"\t"+p6);//2.2、计算最高分max = max>=p1?max:p1;max = max>=p2?max:p2;max = max>=p3?max:p3;max = max>=p4?max:p4;max = max>=p5?max:p5;max = max>=p6?max:p6;//System.out.println(max);//2.3、计算最低分min = min<=p1?min:p1;min = min<=p2?min:p2;min = min<=p3?min:p3;min = min<=p4?min:p4;min = min<=p5?min:p5;min = min<=p6?min:p6;//System.out.println(min);//2.4、计算最终得分finalScore = (p1+p2+p3+p4+p5+p6-max-min)/4.0;//System.out.println(finalScore);//2.5、计算年月日字符串dateStr+=d.getYear()+1900+"-";dateStr+=(d.getMonth()+1)<=9?"0"+(d.getMonth()+1)+"-":(d.getMonth()+1)+"-";dateStr+=d.getDate()<=9?"0"+d.getDate():d.getDate()+"";//System.out.println(dateStr);//2.6、拼接最终展示效果result+="今日("+dateStr+")6位评委的分数分别为:"+p1+"、"+p2+"、"+p3+"、"+p4+"、"+p5+"、"+p6+"\r\n";result+="去掉一个最高分"+max+"、去掉一个最低分"+min+"\r\n";result+="最终得分为:"+finalScore+"分";//3、结果展示System.out.println(result);
}

💙 💜 ❤️ 💚💙 💜 ❤️ 💚💙 💜 ❤️ 💚💙 💜 ❤️💙 💜 ❤️ 💚💙 💜 ❤️ 💚💙 💜 ❤️ 💚

🐋超市收银管理(V3)

1)需求说明

 模拟真实购物逻辑,以下述图片为需求原型,根据不同购物物品完成购物小票内容打印到控制台。

 🌲 知识讲解—多位补0操作

两位数补0:  x<=9?"0"+x:x+"";

多位数补0:代码实现

public static void main(String[] args) {//多位补0//不足6位 补0int r = 9;//String result1;//两种补0方式:int (不建议,繁琐)//10000~99999   补一个0//1000~9999 补两个0//100~999 补三个0//10~99 补四个0//0~9 补五个0result1 = (r>=10000&&r<=99999)?"0"+r:((r>=1000&&r<=9999)?"00"+r:((r>=100&&r<=999)?"000"+r:((r>=10&&r<=99)?"0000"+r:((r>=0&&r<=9)?"00000"+r:r+""))));System.out.println(result1);System.out.println("-----------------");//两种补0方式:StringString str = "599999";//.length() ==5   补1个0//.length() ==4   补2个0//.length() ==3   补3个0//.length() ==2   补4个0//.length() ==1   补5个0String result = str.length()==5?"0"+str:(str.length()==4?"00"+str:(str.length()==3?"000"+str:(str.length()==2?"0000"+str:(str.length()==1?"00000"+str:str))));System.out.println(result);
}

🌲 超市收银管理—代码实现

public static void main(String[] args) {//1、----展示所有商品信息//1.0、定义Random、Scanner变量Random r = new Random();//接收数字Scanner sc1 = new Scanner(System.in);//接收字符串Scanner sc2 = new Scanner(System.in);//1.1、定义变量,保存商品信息String pid1,pid2,pid3,pname1,pname2,pname3;double price1,price2,price3;int num1,num2,num3;//1.2、控制台信息录入System.out.println("\t\t欢迎进入超市收银管理V3");System.out.println("首先,请输入所有的商品信息:");System.out.println("请输入第一个商品的名称:");pname1 = sc2.nextLine();System.out.println("请输入第一个商品的售价:");price1=sc1.nextDouble();System.out.println("请输入第二个商品的名称:");pname2 = sc2.nextLine();System.out.println("请输入第二个商品的售价:");price2=sc1.nextDouble();System.out.println("请输入第三个商品的名称:");pname3 = sc2.nextLine();System.out.println("请输入第三个商品的售价:");price3=sc1.nextDouble();//1.3、pid编号生成pid1=r.nextInt(100000)+"";pid2=r.nextInt(100000)+"";pid3=r.nextInt(100000)+"";pid1= pid1.length()==5?"0"+pid1:(pid1.length()==4?"00"+pid1:(pid1.length()==3?"000"+pid1:(pid1.length()==2?"0000"+pid1:(pid1.length()==1?"00000"+pid1:pid1))));pid2= pid2.length()==5?"0"+pid2:(pid2.length()==4?"00"+pid2:(pid2.length()==3?"000"+pid2:(pid2.length()==2?"0000"+pid2:(pid2.length()==1?"00000"+pid2:pid2))));pid3= pid3.length()==5?"0"+pid3:(pid3.length()==4?"00"+pid3:(pid3.length()==3?"000"+pid3:(pid3.length()==2?"0000"+pid3:(pid3.length()==1?"00000"+pid3:pid3))));//1.4、第一次数据展示System.out.println("编号\t\t品名\t\t\t售价");System.out.println(pid1+"\t\t"+pname1+"\t\t"+price1);System.out.println(pid2+"\t\t"+pname2+"\t\t"+price2);System.out.println(pid3+"\t\t"+pname3+"\t\t"+price3);//2、----计算并展示小票信息//2.0、定义日期Date d = new Date();String dateStr = "";//2.1、定义变量,保存商品信息,保存统计信息,定义Scanner变量double count1,count2,count3,total;int totalNum;//2.2、接收商品购买数量System.out.println("请您输入"+pid1+"购买数量");num1=sc1.nextInt();System.out.println("请您输入"+pid2+"购买数量");num2=sc1.nextInt();System.out.println("请您输入"+pid3+"购买数量");num3=sc1.nextInt();//2.3、计算数据count1 = price1*num1;count2 = price2*num2;count3 = price3*num3;total=count1+count2+count3;totalNum = num1+num2+num3;//2.4、拼接年月日、时分秒dateStr+=(d.getYear()+1900)+"-";dateStr+=((d.getMonth()+1)<=9?"0"+(d.getMonth()+1):(d.getMonth()+1))+"-";dateStr+=(d.getDate()<=9?"0"+d.getDate():d.getDate())+" ";dateStr+=(d.getHours()<=9?"0"+d.getHours():d.getHours())+":";dateStr+=(d.getMinutes()<=9?"0"+d.getMinutes():d.getMinutes())+":";dateStr+=d.getSeconds()<=9?"0"+d.getSeconds():d.getSeconds();//2.4、展示System.out.println("\t\t欢  迎  光  临");System.out.println("\t\t编号\t\t品名\t\t售价\t\t数量\t\t金额");System.out.println("-\t-\t-\t-\t-\t-\t-\t-\t");System.out.println("\t\t"+pid1+"\t\t"+pname1+"\t"+price1+"\t\t\t"+num1+"\t\t\t"+count1);System.out.println("\t\t"+pid2+"\t\t"+pname2+"\t"+price2+"\t\t\t"+num2+"\t\t\t"+count2);System.out.println("\t\t"+pid3+"\t\t"+pname3+"\t"+price3+"\t\t\t"+num3+"\t\t\t"+count3);System.out.println("-\t-\t-\t-\t-\t-\t-\t-\t");System.out.println("\t\t3 项商品\t\t共计:"+totalNum+"件");System.out.println("\t\t总计:"+total);System.out.println("\t\t"+dateStr);System.out.println("凭此小票换取发票!");
}

嘿,朋友!今天的干货你填满了吗?赶紧试试检验检验自己吧!

如果文章对您有帮助,就拿起小手赶紧给博主点赞💚评论❤️收藏💙 一下吧~~~赶紧动起来,让我们一起加油学习吧! 

这篇关于【Java基础】评委打分、超市收银管理【案例】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/721376

相关文章

springboot集成easypoi导出word换行处理过程

《springboot集成easypoi导出word换行处理过程》SpringBoot集成Easypoi导出Word时,换行符n失效显示为空格,解决方法包括生成段落或替换模板中n为回车,同时需确... 目录项目场景问题描述解决方案第一种:生成段落的方式第二种:替换模板的情况,换行符替换成回车总结项目场景s

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

SpringBoot中@Value注入静态变量方式

《SpringBoot中@Value注入静态变量方式》SpringBoot中静态变量无法直接用@Value注入,需通过setter方法,@Value(${})从属性文件获取值,@Value(#{})用... 目录项目场景解决方案注解说明1、@Value("${}")使用示例2、@Value("#{}"php

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。