动手动脑01

动手动脑01

重新编写java测试00

Planinformation

public class PlanInformation {
//    变量id为整型,表示日报流水号,依次加一。
//    变量planid 为字符串类型 String,表示产品生产批次号(例如:2312-110,有8 位字符组成,前四位表示年月,后三位表示序号)。
//    变量planname为字符串类型 String,表示产品名称(例如:“表体”)。
//    变量process为String 类型,表示当前工序名称。(例如:“10.00 .射蜡”数字表示工序号,字符表示工序名称)。
//    变量nextprocess为String 类型,表示下一接收工序名称。(例如:“11.00 .修蜡”含义同上)。
//    变量operator为String类型,表示当前工序的操作者。
//    变量recipient为String类型,表示下一道工序的接受者。
//    变量plannumber为整型,表示该产品定要要求的产品数量。
//    变量innumber为整型,表示从上一道工序的接收的合格产品总数。
//    变量outnumber为整型,表示当前工序的产品转出总数。
//    变量missnumber为整型,表示当前工序的产品丢失数量。
//    变量badnumber为整型,表示当前工序的产品废品数量。
//    变量inspectednumber为整型,表示当前工序的产品待检验数量。
//    变量statement为整型,表示该日报记录的状态,0表示初始计划,1表示日报提交,2表示日报确认。private int id;private String planid;private String planname;private String process;private String nextprocess;private String operator;private String recipient;private int plannumber;private int innumber;private int outnumber;private int missnumber;private int badnumber;private int inspectednumber;private int statement;public PlanInformation() {}public PlanInformation(int id,String planid,String planname,String process,String nextprocess,String operator,String recipient,int plannumber,int innumber,int outnumber,int missnumber,int badnumber,int inspectednumber,int statement) {this.badnumber = badnumber;this.id = id;this.innumber = innumber;this.inspectednumber = inspectednumber;this.missnumber = missnumber;this.nextprocess = nextprocess;this.operator = operator;this.outnumber = outnumber;this.planid = planid;this.planname = planname;this.plannumber = plannumber;this.process = process;this.recipient = recipient;this.statement = statement;}public int getBadnumber() {return badnumber;}public void setBadnumber(int badnumber) {this.badnumber = badnumber;}public int getId() {return id;}public void setId(int id) {this.id = id;}public int getInnumber() {return innumber;}public void setInnumber(int innumber) {this.innumber = innumber;}public int getInspectednumber() {return inspectednumber;}public void setInspectednumber(int inspectednumber) {this.inspectednumber = inspectednumber;}public int getMissnumber() {return missnumber;}public void setMissnumber(int missnumber) {this.missnumber = missnumber;}public String getNextprocess() {return nextprocess;}public void setNextprocess(String nextprocess) {this.nextprocess = nextprocess;}public String getOperator() {return operator;}public void setOperator(String operator) {this.operator = operator;}public int getOutnumber() {return outnumber;}public void setOutnumber(int outnumber) {this.outnumber = outnumber;}public String getPlanid() {return planid;}public void setPlanid(String planid) {this.planid = planid;}public String getPlanname() {return planname;}public void setPlanname(String planname) {this.planname = planname;}public int getPlannumber() {return plannumber;}public void setPlannumber(int plannumber) {this.plannumber = plannumber;}public String getProcess() {return process;}public void setProcess(String process) {this.process = process;}public String getRecipient() {return recipient;}public void setRecipient(String recipient) {this.recipient = recipient;}public int getStatement() {return statement;}public void setStatement(int statement) {this.statement = statement;}public void out(){System.out.println("***********************************************************\n"+"石家庄铁道大学无限23软件开发有限公司\n" +"Mes系统2023版***********************************************************\n" +"产品批次:"+planid+"\n" +"产品名称:"+planname+"\n" +"计划数量:"+plannumber+"\n" +"该产品入库操作已完成,是否提交(Y/N)\n" +"**********************************************************");}}

PlanManagement

import java.util.Scanner;public class PlanManagement {Scanner sc=new Scanner(System.in);int index;PlanInformation []planInformations=new PlanInformation[100];private String []de={"","10.射蜡","柳xx","20.修蜡","藤xx","30.面层",	"郝xx","40.封浆",	"杨xx","50.熔化",	"刘xx","60.切割",	"陶xx","70.精磨",	"阎xx","80.调型",	"郝xx","90.检验",	"刘xx","没有","无"};public void ui(){System.out.println("***********************************************************\n"+"             石家庄铁道大学无限23软件开发有限公司\n" +"                        Mes系统2023版\n" +"***********************************************************\n" +"                          1、生成计划\n" +"                          2、提交日报\n" +"                          3、确认日报\n" +"                          4、统计进度\n" +"**********************************************************");}public PlanManagement() {index=0;int t;do{ui();t= sc.nextInt();switch (t){case 1://创建计划creatPlan();break;case 2://提交日表submit();break;case 3://确认日报confirm();break;case 4://统计stastic();break;default:System.out.println("输入错误");}}while(true);}//    变量id为整型,表示日报流水号,依次加一。
//    变量planid 为字符串类型 String,表示产品生产批次号(例如:2312-110,有8 位字符组成,前四位表示年月,后三位表示序号)。
//    变量planname为字符串类型 String,表示产品名称(例如:“表体”)。
//    变量process为String 类型,表示当前工序名称。(例如:“10.00 .射蜡”数字表示工序号,字符表示工序名称)。
//    变量nextprocess为String 类型,表示下一接收工序名称。(例如:“11.00 .修蜡”含义同上)。
//    变量operator为String类型,表示当前工序的操作者。
//    变量recipient为String类型,表示下一道工序的接受者。
//    变量plannumber为整型,表示该产品定要要求的产品数量。
//    变量innumber为整型,表示从上一道工序的接收的合格产品总数。
//    变量outnumber为整型,表示当前工序的产品转出总数。
//    变量missnumber为整型,表示当前工序的产品丢失数量。
//    变量badnumber为整型,表示当前工序的产品废品数量。
//    变量inspectednumber为整型,表示当前工序的产品待检验数量。
//    变量statement为整型,表示该日报记录的状态,0表示初始计划,1表示日报提交,2表示日报确认。private void creatPlan(){String planid,planname;int plannumber;System.out.println("***********************************************************\n"+"             石家庄铁道大学无限23软件开发有限公司\n" +"                        Mes系统2023版\n" +"***********************************************************" );System.out.print(  "                  产品批次:" );planid=sc.next();while(!checkPlanid(planid)){System.out.println("不符合要求重新输入");planid=sc.next();}System.out.print(  "                  产品名称:");planname= sc.next();
//        while(!checkPlanname(planname)){
//            System.out.println("不符合要求重新输入");
//            planid=sc.next();
//        }System.out.print("                    计划数量:");plannumber=sc.nextInt();System.out.println("**********************************************************");PlanInformation planInformation=new PlanInformation(1,planid,planname,de[1],de[3],de[2],de[4],plannumber,plannumber,0,0,0,0,0);planInformation.out();String str=sc.next();if(str.equals("Y")){planInformations[index]=planInformation;index++;System.out.println("录入成功");}}private  boolean checkPlanid(String planid){if(planid.length()!=8)return false;for(int i=0;i<planid.length();i++){if(i==4){return planid.charAt(i)=='-';}else  {if(planid.charAt(i)<'0'||planid.charAt(i)>'9')return false;}}return true;}
//    private boolean checkPlanname(String planname){
//
//    }private int find(String str){for (int i = 0; i < index; i++) {if(str.equals(planInformations[i].getPlanid()))return i;}return -1;}private void submit(){String str;int outNumber;int missNumber,waitNumber,badNumber;int innumber;System.out.println("***********************************************************\n"+"石家庄铁道大学无限23软件开发有限公司\n" +"Mes系统2023版\n"+"***********************************************************\n" +"请输入产品批次号:");str=sc.next();System.out.println("**********************************************************");int te=find(str);if(te==-1) System.out.println("不存在该产品批次信息");else {if(planInformations[te].getStatement()==0){System.out.println("***********************************************************\n"+"         石家庄铁道大学无限23软件开发有限公司\n" +"                 Mes系统2023版\n"+"***********************************************************");System.out.print(                "                1、产品批次:"+planInformations[te].getPlanid()+"\n" );System.out.print(                   "                2、产品名称:"+planInformations[te].getPlanname()+"\n" );System.out.print(                  "                3、计划数量:"+planInformations[te].getPlannumber()+"\n" );System.out.println(                 "                4、当前工序:"+de[planInformations[te].getId()*2-1] );System.out.println(                   "                5、下一工序:"+de[planInformations[te].getId()*2-1+2] );System.out.println(                  "                6、操作员:"+ de[planInformations[te].getId()*2]);System.out.println("                7、接收员:("+de[planInformations[te].getId()*2+2]);System.out.print(  "                8、上一道工序转入数量:" );if(planInformations[te].getId()==1) {System.out.println(planInformations[te].getPlannumber());innumber=planInformations[te].getPlannumber();}else {do{innumber=sc.nextInt();if(innumber>planInformations[te].getPlannumber())System.out.println("输入错误.重新输入");}while(innumber<planInformations[te].getPlannumber());}System.out.print(  "                9、转出总数:" );do{outNumber=sc.nextInt();if(outNumber>innumber)System.out.println("输入错误.重新输入");}while(outNumber>innumber);System.out.print( "                10、丢失数量:" );missNumber=sc.nextInt();System.out.print("                11、废品数量:" );badNumber=sc.nextInt();System.out.print("                12、待检验数量:");waitNumber=sc.nextInt();System.out.println("***********************************************************");while(innumber!=missNumber+badNumber+waitNumber+outNumber){System.out.println("请重新输入 10、丢失数量,11、废品数量,12、待检验数量");missNumber=sc.nextInt();badNumber=sc.nextInt();waitNumber=sc.nextInt();}System.out.println("是否提交(Y/N)");String st=sc.next();if(st.equals("Y")){planInformations[te].setId(planInformations[te].getId());planInformations[te].setInnumber(outNumber);planInformations[te].setOutnumber(outNumber);planInformations[te].setMissnumber(missNumber);planInformations[te].setBadnumber(badNumber);planInformations[te].setInspectednumber (waitNumber);planInformations[te].setStatement(1);}}else{System.out.println("***********************************************************\n"+"         石家庄铁道大学无限23软件开发有限公司\n" +"                 Mes系统2023版\n"+"***********************************************************");System.out.print(                "                1、产品批次:"+planInformations[te].getPlanid()+"\n" );System.out.print(                   "                2、产品名称:"+planInformations[te].getPlanname()+"\n" );System.out.print(                  "                3、计划数量:"+planInformations[te].getPlannumber()+"\n" );System.out.println(                 "                4、当前工序:"+de[planInformations[te].getId()*2-1] );System.out.println(                   "                5、下一工序:"+de[planInformations[te].getId()*2-1+2] );System.out.println(                  "                6、操作员:"+ de[planInformations[te].getId()*2]);System.out.println("                7、接收员:("+de[planInformations[te].getId()*2+2]);System.out.print(  "                8、上一道工序转入数量:" );if(planInformations[te].getId()==1) {System.out.println(planInformations[te].getPlannumber());innumber=planInformations[te].getPlannumber();}innumber=planInformations[te].getInnumber();System.out.println(innumber);System.out.print(  "                9、转出总数:" );do{outNumber=sc.nextInt();if(outNumber>innumber)System.out.println("输入错误.重新输入");}while(outNumber>innumber);System.out.print( "                10、丢失数量:" );missNumber=sc.nextInt();System.out.print("                11、废品数量:" );badNumber=sc.nextInt();System.out.print("                12、待检验数量:");waitNumber=sc.nextInt();System.out.println("***********************************************************");while(innumber!=missNumber+badNumber+waitNumber+outNumber){System.out.println("请重新输入 10、丢失数量,11、废品数量,12、待检验数量");missNumber=sc.nextInt();badNumber=sc.nextInt();waitNumber=sc.nextInt();}System.out.println("是否提交(Y/N)");String st=sc.next();if(st.equals("Y")){planInformations[te].setId(planInformations[te].getId());planInformations[te].setInnumber(innumber);planInformations[te].setOutnumber(outNumber);planInformations[te].setMissnumber(missNumber);planInformations[te].setBadnumber(badNumber);planInformations[te].setInspectednumber (waitNumber);planInformations[te].setStatement(1);}}}}public void confirm(){String str;int te;while(true) {System.out.println("***********************************************************\n" + "石家庄铁道大学无限23软件开发有限公司\n" +"Mes系统2023版\n" + "***********************************************************\n" +"请输入产品批次:");str = sc.next();System.out.println("**********************************************************");te=find(str);if(te==-1){System.out.println("找不到");}else break;}if(planInformations[te].getStatement()==1){System.out.println("***********************************************************\n"+"石家庄铁道大学无限23软件开发有限公司\n" +"Mes系统2023版\n"+"***********************************************************\n" +"1、产品批次:" +planInformations[te].getPlanid()+"\n"+"2、产品名称:"+planInformations[te].getPlanname()+"\n" +"3、计划数量:"+planInformations[te].getPlannumber()+"\n" +"4、当前工序:"+de[planInformations[te].getId()*2-1]+"\n" +"5、下一工序:"+de[planInformations[te].getId()*2+1]+"\n" +"6、操作员:"+de[planInformations[te].getId()*2]+"\n" +"7、接收员:"+de[planInformations[te].getId()*2+2]+"\n" +"8、上一道工序转入数量:"+planInformations[te].getInnumber()+"\n" +"9、转出总数:"+planInformations[te].getOutnumber()+"\n" +"10、丢失数量:"+planInformations[te].getMissnumber()+"\n" +"11、废品数量:"+planInformations[te].getBadnumber()+"\n" +"12、待检验数量:"+planInformations[te].getInspectednumber()+"\n"+" **********************************************************");System.out.println("是否确认(Y/N)");String st=sc.next();if(st.equals("Y")){planInformations[te].setStatement(planInformations[te].getStatement()+1);planInformations[te].setId(planInformations[te].getId()+1);planInformations[te].setInnumber( planInformations[te].getOutnumber());planInformations[te].setBadnumber(0);planInformations[te].setInspectednumber(0);planInformations[te].setMissnumber(0);System.out.println("***********************************************************\n"+"石家庄铁道大学无限23软件开发有限公司\n" +"Mes系统2023版\n"+"***********************************************************\n" +"1、产品批次:"+planInformations[te].getPlanid()+"\n" +"2、产品名称:"+planInformations[te].getPlanname()+"\n" +"3、计划数量:"+planInformations[te].getPlannumber()+"\n" +"4、当前工序:"+de[planInformations[te].getId()*2-1]+"\n" +"5、下一工序:"+de[planInformations[te].getId()*2+1]+"\n" +"6、操作员:"+de[planInformations[te].getId()*2]+"\n" +"7、接收员:"+de[planInformations[te].getId()*2+2]+"\n" +"8、上一道工序转入数量:"+planInformations[te].getInnumber()+"\n" +"**********************************************************");}}}private void stastic(){int t=0;System.out.println("***********************************************************\n"+"石家庄铁道大学无限23软件开发有限公司\n" +"Mes系统2023版\n"+"***********************************************************\n" +"1、产品批次:"+planInformations[0].getPlanid()+"\n" +"2、产品名称:"+planInformations[0].getPlanname()+"\n" +"3、计划数量:"+planInformations[0].getPlannumber()+"\n" +"4、完成数量:"+planInformations[0].getInnumber()+"\n" +"5、剩余数量:"+(planInformations[0].getPlannumber()-planInformations[0].getInnumber())+"\n" +"**********************************************************");}
}

测试类

public class test {public static void main(String[] args) {PlanManagement p=new PlanManagement();}}

枚举类

程序源码

public class EnumTest {public static void main(String[] args) {Size s=Size.SMALL;Size t=Size.LARGE;//s��t����ͬһ������System.out.println(s==t);  ////��ԭʼ����������System.out.println(s.getClass().isPrimitive());//���ַ�����ת��Size u=Size.valueOf("SMALL");System.out.println(s==u);  //true//�г���������ֵfor(Size value:Size.values()){System.out.println(value);}}}
enum Size{SMALL,MEDIUM,LARGE};

运行结果

样例分析

(1)枚举类可以直接使用等于号来进行相同的判断的比较
(2)getClass()可以直接返回类,然后调用静态函数,valueof传入一个字符串,返回一个枚举值
(3)通过Size value:Size.values()来实现枚举值的遍历

浮点数的精度问题

问题引入

由于浮点数在内存中的存储问题,所以会使得在计算的时候存在误差.

解决方法

使用BigDecimal类,进行计算

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/804847.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

黑马PM-内容项目-用户端产品设计

引导页&启动页&闪屏页用户端设计思路注册登录内容发布内容列表&内容详情内容分发个人中心

实现一个自动生成小学四则运算题目的命令行程序

这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/homework/13230这个作业的目标 实现一个自动生成小学四则运算题目的命令行程序项目成员 本结对项目由 -- 3122004589 张逸程 --…

第一次结对作业102202106王强

第一次结对作业之需求分析和原型设计这个作业属于哪个课程 首页 - 软件工程2024 - 福州大学 - 班级博客 - 博客园这个作业要求在哪里 2024秋软件工程结对作业(第一次之需求分析和原型设计) - 作业 - 软件工程2024 - 班级博客 - 博客园这个作业的目标 结对作业,进行需求分析和…

C++ 容器赋值运算符

▲ 《C++ Primer》 P302

第34章 货币政策和财政政策对总需求的影响

货币政策如何影响总需求 对美国经济来说,总需求曲线向右下方倾斜的最重要原因是利率效应。流动性偏好理论(theory of liquidity preference):凯恩斯提出的理论,认为利率的调整会使货币供给与货币需求达到平衡第一部分 货币供给 货币供给量由美联储的政策所固定,因此它不取…

标准库之 datetime和time 模块

一、time 模块 time模块是Python标准库中最基础、最常用的模块之一。它提供了各种处理时间的方法和函数,如获取当前时间、格式化时间、计算时间差等。time模块大部分函数的底层实现是 C 语言库的时间处理函数。 1.1、获取时间相关函数 1.1.1、time.time()函数 时间戳是指格林威…

一次实践:给自己的手机摄像头进行相机标定

记录了一次给自己的手机摄像头进行相机标定的技术实践。目录1. 问题引入2. 准备工作2.1 标定场2.2 相机拍摄3. 基本原理3.1 成像原理3.2 畸变校正4. 标定解算4.1 代码实现4.2 详细解析4.2.1 解算实现4.2.2 提取点位4.3 解算结果5. 问题补充 1. 问题引入 不得不说,现在的计算机…

第33章 总需求与总供给

衰退(recession):真实收入下降和失业增加的时期 萧条(depression):严重的衰退关于经济波动的三个关键事实经济波动是无规律的且不可预测的 大多数宏观经济变量同时波动 随着产量的减少,失业增加解释短期经济波动 古典经济学:古典二分法和货币中性。货币供给的变动影响名…

ISO/IEC/IEEE 29119-1:2022(E) 系统与软件工程软件测试第1部分:概念和定义

0 前言 国际标准化组织(ISO the International Organization for Standardization)和国际电工委员会(IEC the International Electrotechnical Commission)构成了世界标准化的专门体系。作为国际标准化组织或国际电工委员会成员的国家机构通过各自组织设立的技术委员会参与…

软件工程2024第一次结对作业

这个作业属于哪个课程 fzu-se2024这个作业要求在哪里 要求这个作业的目标 学习软件开发的前期过程,构建软件工程雏形学号 102201331队友施靖杰 102201327 使用工具:墨刀 原型(SkillBridge)链接《构建之法》学习 第三章 软件工程师的成长 1.IC在团队中的开发流程通过交流、实…

不同batch_size性能分析、MeshAnything论文

1、不同batch_size时运行train_segmentor.py的cpu、gpu、内存使用情况和batch_size性能分析 任务管理器cpu、gpu参数Windows 11最新版:任务管理器性能参数详解,什么是分页缓冲池和句柄-CSDN博客batch_size cpu利用率 gpu [专用、共享、GPU内存] iter用时(s) iters / epoch me…

开发一个flutter app

重新开启了flutter学习,因为一个大创项目 很对不起王建民主任,教导的软件需求知识,我完全没有用到。 首先配置环境 需要用android studio 自己用idea一直出错。所以一定要选择用android studio ,随便在网上找个教程就可以了 在android 中 build.gradle 添加以下代码 确保ap…