OOP4-6次作业

news/2025/1/20 1:56:15/文章来源:https://www.cnblogs.com/cyct45/p/18239143

OOP4-6次作业

一.前言:

1.第四次PTA:

①题目理解:

延续前面的四次PTA,只不过在此基础上进行更全面的处理,新增了其他的一些点。例如增加了多选题,的输入方式,这样,也就增加了多选题的输出方式。增加了一些填空题,对其部分正确的判断变成了一个难点,也增加了其输出的难度和种类。

②知识点:

1·正则表达式去匹配一个字符串,如何去分组获得其内容;

2·Arroys.copyOf()函数的使用,获取下一次的时候应当在new一个对象,否则会将部分数据覆盖,或者其先扩增一个单位在进行复制;

3·trim()函数的使用

4·去除匹配字符串数组的的null

5·相关的逻辑

6·如何去重写一个函数toString()

③题量:

正常;

④难度:

正常;

2.第五次PTA:

①题目理解:

第五次PTA,是家居强电路模拟装置程序,通过电路的开闭,和各种用电其,和电路控制设备,会产生多种情况,和不同的输出内容和方式会将题目变得复杂许多,但是按要求实现即可。

②知识点:

1.抽象类的如何使用。

2.接口的如何使用。

3.正则表达式去匹配一个字符串,如何去分组获得其内容;

4.Arroys.copyOf()函数的使用,获取下一次的时候应当在new一个对象,否则会将部分数据覆盖,或者其先扩增一个单位在进行复制;

③题量:

正常;

④难度:

正常;

3.第六次PTA:

①题目理解:

增加了串联和并联电路,这样就存在了串联电路短路的情况,同时也增加了题目的难度。并且此次增加了电压和电阻的加入,这样如何计算电阻分配电压成为一个难题,如何用电压去分配成了一个难题。

②知识点:

1.正则表达式去匹配一个字符串,如何去分组获得其内容;

2.Arroys.copyOf()函数的使用,获取下一次的时候应当在new一个对象,否则会将部分数据覆盖,或者其先扩增一个单位在进行复制;

3.逻辑关系中的联系。

4.他的输出是按照从小到大的一定顺序进行排序的。

③题量:

正常;

④难度:

正常;

二.内容:

1.第四次PTA:

①题目简介:

  1. 程序输入信息分五种,信息可能会打乱顺序混合输入。解释:这就要求我们要根据#前面的符号进行判断。
  2. 试卷信息为独 行输入,一行为一张试卷,多张卷可分多行输入数据。解释:存在多张试卷的情况,这就要循环找到这是哪几张试卷。
  3. 答卷信息按行输入,每一行为一张答卷的答案,每组答案包含某个试卷信息中的题目的解题答案,答案的顺序号与试 卷信息中的题目顺序相对应。解释:这就要求我们根据学号,找到试卷好,根据试卷号,找到标准答案,再根据试卷号的题目判断判断正确与否,和算其得分。
  4. 还存在删除题目信息的输出信息提示,例如:”the question 2 invalid~0”。还有试卷总分的警示。

②内容实现:

1.对于//#S:1 20201103 #A:1-5 #A:2-4这样的情况的时候;

if(a.charAt(1)=='S'){String[] s_s=null;//#S:1 20201103 #A:1-5 #A:2-4//if () 这里还需要排除,#A:#A:这种示例   [\u4e00-\u9fa5A-Z0-9\s]String pattern5="#S:\\d+\\s+\\d+\\s+(\\s*#A:\\s*\\d+\\s*-\\s*[\\u4e00-\\u9fa5A-Z0-9\\s]*\\s*)*$";Pattern p5 = Pattern.compile(pattern5);Matcher m5 = p5.matcher(a);
  1. 他这里面有对于数字的匹配[\u4e00-\u9fa5A-Z0-9\s]这样的情况;
  2. 这里面可能还会存在多个空格,至少有一个,而且#A的前面一定是要有空格的所以应当先写个\\s+的判断,而且这还要重复多次判断,这就要在整个需要重复的片段加*;

2.对于/#K:2 #Q:古琴在古代被称为: #A:瑶琴或七弦琴这种填空题。

 if(a.charAt(1) == 'K'){//填空题,就是说我的类还要再改//#K:2 #Q:古琴在古代被称为: #A:瑶琴或七弦琴String pattern1 = "#K:(\\s*[1-9]\\d*\\s*)\\s+#Q:(.*)\\s+#A:(.*)";Pattern p1 = Pattern.compile(pattern1);Matcher m2 = p1.matcher(a);
  1. 你不仅要判断他是否正确,还要判断他是否半对,和错误的情况
  2. 这个正则表达式就巧妙的用.*去匹配了所有的#Q和#A中的内容

3.重要函数的实现:

1·通过int sccz=0;的这个标记来实现如果未找到这个试卷,就输出不存在。

 for (int i = 0; i < answerpaper.length - 1; i++) {  //#S:1 20201103 #A:1-5 #A:2-4 answerpaperint sccz = 0;//这个是用来判断是否存在这个试卷for (int k = 0; k < answerfens.length - 1; k++) {  //#T:1 1-5if (answerfens[k].numberPaper.equals(answerpaper[i].textNumber)) {if (sccz == 0) {System.out.println("The test paper number does not exist");}}}}

2·我们如果存在试卷则去找对应的学生,写的试卷答案,然后我们用flag=0;去标记是否找到

   sccz = 1;int flag = 0;//int a[] = new int[1];int numm = 0;int gg = 0;int sum = 0;//for (int l = 0; l < student.studentNumber.length; l++) {if (answerpaper[i].studentNumber.equals(student.studentNumber[l])) {flag = 1;

3·接着我们要判断是否这个答案是否是被删除的,用flag2=0;来标记。顺便去输出这个题目是否是被删除的

  for (int p = 0; p < answerfens[k].number.length; p++) {int flag3 = 0;//每次循环都要赋值为零for (int q = 0; q < answerpaper[i].titleNumber.length; q++) {if (answerpaper[i].titleNumber[q].equals(String.valueOf(p + 1))) {flag3 = 1;//去判断这个题目是否被删int flag2 = 0;if (deleteNumber != null) {for (int r = 0; r < deleteNumber.titlenumber.length; r++) {if (deleteNumber.titlenumber[r].equals(answerfens[k].number[p])) {flag2 = 1;System.out.println("the question " + answerfens[k].number[p] + " invalid~0");//判断得分的a[numm] = 0;a = Arrays.copyOf(a, a.length + 1);numm++;}}}

4·接着我们找到这个题目,且不是被删除的,我们就分三种情况,普通的单选题,填空题,多选题,然后我们再去对应的类的数组中去找是否存在这样的题目

一.单选

  for (int u = 0; u < pttitles.length - 1; u++) {if (answerfens[k].number[p].equals(pttitles[u].number)) {flag4 = 1;if (answerpaper[i].titleAnswer[q].equals(pttitles[u].pt_standardAnswer)) {System.out.println(pttitles[u].content + "~" + answerpaper[i].titleAnswer[q] + "~true");a[numm] = Integer.valueOf(answerfens[k].score[p]);a = Arrays.copyOf(a, a.length + 1);numm++;} else {System.out.println(pttitles[u].content + "~" + answerpaper[i].titleAnswer[q] + "~false");a[numm] = 0;a = Arrays.copyOf(a, a.length + 1);numm++;}}}

二.填空题

 for (int z = 0; z < tktitles.length - 1; z++) {if (answerfens[k].number[p].equals(tktitles[z].number)) {flag4 = 1;//这里是找到题号int ccd = tkpd(tktitles[z].tk_standardAnswer, answerpaper[i].titleAnswer[q]);if (ccd == 1) {System.out.println(tktitles[z].content + "~" + answerpaper[i].titleAnswer[q] + "~true");//判断分数a[numm] = Integer.valueOf(answerfens[k].score[p]);a = Arrays.copyOf(a, a.length + 1);numm++;} else if (ccd == 0) {System.out.println(tktitles[z].content + "~" + answerpaper[i].titleAnswer[q] + "~partially correct");//判断分数a[numm] = (int) (Integer.valueOf(answerfens[k].score[p]) * 0.5);a = Arrays.copyOf(a, a.length + 1);numm++;} else if (ccd == -1) {System.out.println(tktitles[z].content + "~" + answerpaper[i].titleAnswer[q] + "~false");//判断分数a[numm] = 0;a = Arrays.copyOf(a, a.length + 1);numm++;}}}

三.多选题

    for (int w = 0; w < dxtitles.length - 1; w++) {if (answerfens[k].number[p].equals(dxtitles[w].number)) {flag4 = 1;//标记说明有这个试卷int ccd2 = dxpd(dxtitles[w].dx_standardAnswer, answerpaper[i].titleAnswer[q]);if (ccd2 == 1) {System.out.println(dxtitles[w].content + "~" + answerpaper[i].titleAnswer[q] + "~true");//判断分数,正确得全分a[numm] = Integer.valueOf(answerfens[k].score[p]);a = Arrays.copyOf(a, a.length + 1);numm++;} else if (ccd2 == 0) {System.out.println(dxtitles[w].content + "~" + answerpaper[i].titleAnswer[q] + "~partially correct");//判断分数,半对就得一半分a[numm] = (int) (Integer.valueOf(answerfens[k].score[p]) * 0.5);a = Arrays.copyOf(a, a.length + 1);numm++;} else if (ccd2 == -1) {System.out.println(dxtitles[w].content + "~" + answerpaper[i].titleAnswer[q] + "~false");//判断分数,全错就得零分a[numm] = 0;a = Arrays.copyOf(a, a.length + 1);numm++;}}}

③踩坑心得:

  1. 一开始我都没注意到这个点就是必须有一个空格,然后存在多个空格然后可以去除空格,我们可以在输入的时候就把空格全去掉。

  2.  if(Integer.parseInt(answerPapers[k].studentNumber)== Integer.parseInt(answerPapers[k+1].studentNumber)){if(Integer.parseInt(answerPapers[k].textNumber)> Integer.parseInt(answerPapers[k+1].textNumber)){AnswerPaper temp2=answerPapers[k];answerPapers[k]=answerPapers[k+1];answerPapers[k+1]=temp2;}}
    

    我们存进去的名字是String的转成int 用Integer.parseInt()函数,一开始直接比了然后报错,找不到,之后看了保存的是Stirng。

④改进建议:

判断好其中的逻辑关系,然后注意他的测试点过的条件,然后不然有点太难找了。

2.第五次PTA:

①题目简介:

控制设备模拟:开关,分档调速器,连续调速器

受控设备模拟:灯,电风扇

本次迭代只存在串联的情况,然后并且他并没有电压和电阻的模拟,所以只需要通过开关来判断是否是通路,当然我们也可已没有开关,这就默认是通路。

②内容实现:

一.声明受控设备类,和控制设备类,五种电器去继承他,我们这一次只有一个串联电路然后我们在电路设备类中进行判断

二.接受对应控制设备的状态更改条件,然后可以对相应控制设备进行更改

if(a.charAt(1)=='K'){String ggg = String.valueOf(a.charAt(2));for(int i=0;i<deviceControlings.length-1;i++){if(deviceControlings[i] instanceof Switch){if(((Switch) deviceControlings[i]).name==Integer.parseInt(ggg)){((Switch) deviceControlings[i]).setState();}}}
//                        switch1.setState();}else if(a.charAt(1)=='F'){if(a.charAt(a.length()-1)=='+'){governorBinning1.setGrears("+");}else if(a.charAt(a.length()-1)=='-'){governorBinning1.setGrears("-");}}else if(a.charAt(1)=='L'){String[] get2=a.split(":");governorContinuous1.setMagnification(Double.parseDouble(get2[1]));}}

三.当我们将所有的输入都输入完成,然后我们在电路设备中进行判断,也是我们的主要函数。

1.判断我们是否存在开关断开

     int number2=0;for(int i=0;i<s.length-1;i++){s[i].show();   //输出按开关的名称编号if(s[i].state==1){// 判断存在了开关闭合的情况number2++;}}if(number2!=number){  //存在了开关断开的情况for (int k = 0; k < deviceControlleds.length-1; k++) {deviceControlleds[k].setPd(0);deviceControlleds[k].show();}

2.然后去输出获得对应的电压赋值

if(number2==number){for (int i = 0; i < deviceControlings.length; i++) {if(deviceControlings[i] instanceof governorBinning){((governorBinning) deviceControlings[i]).show();((governorBinning) deviceControlings[i]).setV(220);for(int k=0;k<deviceControlleds.length-1;k++){deviceControlleds[k].setPd(((governorBinning) deviceControlings[i]).getV());deviceControlleds[k].show();}break;}else if(deviceControlings[i] instanceof governorContinuous) {((governorContinuous) deviceControlings[i]).show();((governorContinuous) deviceControlings[i]).setV(220);for (int k = 0; k < deviceControlleds.length - 1; k++) {deviceControlleds[k].setPd(((governorContinuous) deviceControlings[i]).getV());deviceControlleds[k].show();}break;}else if(deviceControlings[i] instanceof Switch){for (int k = 0; k < deviceControlleds.length - 1; k++) {deviceControlleds[k].setPd(220);deviceControlleds[k].show();}break;}else {for (int k = 0; k < deviceControlleds.length - 1; k++) {deviceControlleds[k].setPd(220);deviceControlleds[k].show();}}}}

③踩坑心得:

多种条件去进行排序输出,我们可以转换成找到一类设备,然后再按照条件去排序。

④改进建议:

题目要求说我们要按照设备的顺序,并且同种设备需要根据设备名称的大小进行排序

  Switch[] s=new Switch[1];//看排序,把Switch放到另一个数组Switch数组里,然后进行冒泡排序int num_s=0;int number=0;  //保存着有多少个开关for (int i = 0; i < deviceControlings.length; i++) {if (deviceControlings[i] instanceof Switch) {number++;s[num_s]=(Switch) deviceControlings[i];s= Arrays.copyOf(s,s.length+1);num_s++;}}for(int i=0;i<s.length-1-1;i++){for(int k=0;k<s.length-i-1-1;k++){if (s[k].name>s[k+1].name){Switch temp=s[k];s[k]=s[k+1];s[k+1]=temp;}}}int number2 = 0;for (int i = 0; i < s.length - 1; i++) {s[i].show();   //输出按开关的名称编号if (s[i].state == 1) {// 判断存在了开关闭合的情况number2++;}}if (number2 != number) {  //存在了开关断开的情况for (int k = 0; k < deviceControlleds.length - 1; k++) {deviceControlleds[k].setPd(0);deviceControlleds[k].show();}

3.第六次PTA:

①题目简介:

相较上一次,多了一种吊扇为落地扇,并且灯具多了白炽灯和日光灯

并且增加了并联的设备但是并联的线路在这里只有一条

电路计算要包含电流、电阻等电路参数。

但是不用计算引脚的位置。

②内容实现:

1·重新写了一个排序针对所有的设备,通过instanceof的函数把找到的同类设备放入一个新的数组中然后排序去输出,然后同理可得复制代码。

 public void show(){//按照先排序Switch[] s=new Switch[1];//看排序,把Switch放到另一个数组Switch数组里,然后进行冒泡排序int num_s=0;for (int i = 0; i < deviceControlings.length-1; i++) {if (deviceControlings[i] instanceof Switch) {s[num_s]=(Switch) deviceControlings[i];s= Arrays.copyOf(s,s.length+1);num_s++;}}for(int i=0;i<s.length-1-1;i++){for(int k=0;k<s.length-i-1-1;k++){if (s[k].name>s[k+1].name){Switch temp=s[k];s[k]=s[k+1];s[k+1]=temp;}}}for(int i=0;i<s.length-1;i++){s[i].show();}//同理governorBinning[] gB=new governorBinning[1];int num_gB=0;for (int i = 0; i < deviceControlings.length-1; i++) {if (deviceControlings[i] instanceof governorBinning) {gB[num_gB]=(governorBinning) deviceControlings[i];gB= Arrays.copyOf(gB,gB.length+1);num_gB++;}}for(int i=0;i<gB.length-1-1;i++){for(int k=0;k<gB.length-i-1-1;k++){if (gB[k].name>gB[k+1].name){governorBinning temp=gB[k];gB[k]=gB[k+1];gB[k+1]=temp;}}}for(int i=0;i<gB.length-1;i++){gB[i].show();}//同理governorContinuous[] gC=new governorContinuous[1];int num_gC=0;for (int i = 0; i < deviceControlings.length-1; i++) {if (deviceControlings[i] instanceof governorContinuous) {gC[num_gC]=(governorContinuous) deviceControlings[i];gC= Arrays.copyOf(gC,gC.length+1);num_gC++;}}for(int i=0;i<gC.length-1-1;i++){for(int k=0;k<gC.length-i-1-1;k++){if (gC[k].name>gC[k+1].name){governorContinuous temp=gC[k];gC[k]=gC[k+1];gC[k+1]=temp;}}}for(int i=0;i<gC.length-1;i++){gC[i].show();}//同理incandescnetLamp[] iL=new incandescnetLamp[1];int num_iL=0;for (int i = 0; i < deviceControlleds.length-1; i++) {if (deviceControlleds[i] instanceof incandescnetLamp) {iL[num_iL]=(incandescnetLamp) deviceControlleds[i];iL= Arrays.copyOf(iL,iL.length+1);num_iL++;}}for(int i=0;i<iL.length-1-1;i++){for(int k=0;k<iL.length-i-1-1;k++){if (iL[k].name>iL[k+1].name){incandescnetLamp temp=iL[k];iL[k]=iL[k+1];iL[k+1]=temp;}}}for(int i=0;i<iL.length-1;i++){iL[i].show();}//同理fluorescentLamp[] fL=new fluorescentLamp[1];int num_fL=0;for (int i = 0; i < deviceControlleds.length-1; i++) {if (deviceControlleds[i] instanceof fluorescentLamp) {fL[num_fL]=(fluorescentLamp) deviceControlleds[i];fL= Arrays.copyOf(fL,fL.length+1);num_fL++;}}for(int i=0;i<fL.length-1-1;i++){for(int k=0;k<fL.length-i-1-1;k++){if (fL[k].name>fL[k+1].name){fluorescentLamp temp=fL[k];fL[k]=fL[k+1];fL[k+1]=temp;}}}for(int i=0;i<fL.length-1;i++){fL[i].show();}//同理ceilingFan[] cF=new ceilingFan[1];int num_cF=0;for (int i = 0; i < deviceControlleds.length-1; i++) {if (deviceControlleds[i] instanceof ceilingFan) {cF[num_cF]=(ceilingFan) deviceControlleds[i];cF= Arrays.copyOf(cF,cF.length+1);num_cF++;}}for(int i=0;i<cF.length-1-1;i++){for(int k=0;k<cF.length-i-1-1;k++){if (cF[k].name>cF[k+1].name){ceilingFan temp=cF[k];cF[k]=cF[k+1];cF[k+1]=temp;}}}for(int i=0;i<cF.length-1;i++){cF[i].show();}//同理FloorFan[] fF=new FloorFan[1];int num_fF=0;for (int i = 0; i < deviceControlleds.length-1; i++) {if (deviceControlleds[i] instanceof FloorFan) {fF[num_fF]=(FloorFan) deviceControlleds[i];fF= Arrays.copyOf(fF,fF.length+1);num_fF++;}}for(int i=0;i<fF.length-1-1;i++){for(int k=0;k<fF.length-i-1-1;k++){if (fF[k].name>fF[k+1].name){FloorFan temp=fF[k];fF[k]=fF[k+1];fF[k+1]=temp;}}}for(int i=0;i<fF.length-1;i++){fF[i].show();}

2·然后对于如何实现电路的电阻和电压的赋值在每个串联电路和每个并联电路都设置电阻,把并联电路看作是一个用电器,然后每个串联电路都有设置总电阻,然后串联电路和并联电路都有设置总电压的函数,当我们把干路上赋值完之后,我们可以设置每个用电器的电压和电阻。

  public void setsetVoltageAll(){//先给并联赋电阻值//2.再给各个串联电路赋电阻值if(parallelDevice!=null){parallelDevice.setResistanceAll();}for(int i=0;i<tandemDevices.length-1;i++){tandemDevices[i].setResistanceAll();}tandemDevices[tandemDevices.length-1-1].setVoltageAll(220);tandemDevices[tandemDevices.length-1-1].setVoltageApart();if(parallelDevice!=null){parallelDevice.setVoltageApart();for(int i=0;i<parallelDevice.tandemDevices.length-1;i++){// parallelDevice.tandemDevices[i].setVoltageAll(parallelDevice.voltageAll);parallelDevice.tandemDevices[i].setVoltageApart();}}

3·对于并联我们要有特殊判断,因为并联电路上的一条支链如果全是开关闭合,那么并联电路就被短路了。

   //先判断并联支路短路的情况int target = 0;for (int i = 0; i < tandemDevices.length - 1; i++) {int num = 0;if (tandemDevices[i].deviceControlings != null) {  //查看控制设备开关的开闭for (int j = 0; j < tandemDevices[i].deviceControlings.length - 1; j++) {//存在用电器为零个,开关闭合,形成短路if (tandemDevices[i].deviceControlings[j] instanceof Switch && ((Switch) tandemDevices[i].deviceControlings[j]).state == 1) {num = 1;} else if (tandemDevices[i].deviceControlings[j] instanceof Switch && ((Switch) tandemDevices[i].deviceControlings[j]).state == 0) {num = 0;break;}}}if (num == 1 && tandemDevices[i].deviceControlleds == null) {  //开关都闭合,无用电器器target = 1;break;}}if (target == 1) {this.resistanceAll = 0;}

③踩坑心得:

1·要考虑到多种情况,比如说并联的的短路情况

2·我们还要考虑到是否在这次情况中有并联和串联的电路,所以要加特判。

   if(parallelDevice!=null){parallelDevice.setVoltageApart();for(int i=0;i<parallelDevice.tandemDevices.length-1;i++){// parallelDevice.tandemDevices[i].setVoltageAll(parallelDevice.voltageAll);parallelDevice.tandemDevices[i].setVoltageApart();}}

3·我们动态增加数组我们也要加特判如果开始时空则声明,之后用Arrays.copyOf函数去动态增加。

  public void setTandemDevices(TandemDevice tandemDevices) {if (this.tandemDevices == null) {this.tandemDevices = new TandemDevice[1];}this.tandemDevices[i] = tandemDevices;i++;this.tandemDevices = Arrays.copyOf(this.tandemDevices, this.tandemDevices.length + 1);}

④改进建议:

1·使用动态数组去增加长度时,要防止你多次去声明,把数据覆盖掉;

2·从总压到分压,要注意其误差。

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

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

相关文章

第4到6次PTA大作业课后分析与反思 BLOG

前言 第4到6次大作业分为两个部分,第4次大作业是对上三次大作业的最终迭代,第5到第6次是新的大作业,是关于电路的迭代。 设计与分析 第四次大作业题目: 设计实现答题程序,模拟一个小型的测试,要求输入题目信息、试卷信息、答题信息、学生信息、删除题目信息,根据输入题目…

ch2 信息与行为

信息与行为重点(from 裴雷)阿莱悖论(独立性) 冯诺依曼公式 贝叶斯信念 信息搜寻预期收益(大题)理性人 经济理性的两个基本假定是:自利性和极大化原则自利性:在行为选择中个体总是倾向选择对自身最具有优势的选择方案 极大化原则,也可以包括极小化原则,指个体对最大幸福…

关于第四到六次PTA作业总结

一.第四到六次PTA作业的分析 1.第四次PTA作业的分析 (1). 理解题目的需求 在编程之前,准确理解题目需求至关重要。本题中,输入格式和输出格式的细节非常多,包括各种异常情况的处理,这些都需要仔细阅读题目描述,确保理解了每一个细节。在实际操作中,我采取了以下措施: …

WebLogic XMLDecoder反序列化漏洞

有关WebLogic的XMLDecoder反序列化漏洞包括CVE-2017-3506、CVE-2017-10271、CVE-2019-2725、CVE-2019-2729等,其漏洞原理相似,差异主要在于出问题的包、黑名单过滤的标签。目录前言XMLDecoder概述XMLDecoder反序列化漏洞漏洞复现 前言 上篇复现了T3反序列化漏洞,XMLDecoder反…

第四日

4. 从前序与中序遍历序列构造二叉树 题目描述:给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。 示例:输入: preorder = [3,9,20,15,7], inorder = [9,3,15,20,7] 输出: [3,9,20,nul…

Python_编程基础

Python_编程基础 Python编程基础 0、简单介绍 解释型语言:一边编译一边运行,不需要进行编译,运行效率比较低 解释器 JavaScript-浏览器 python.exe php.exe 编译型语言:运行前需要进行编译,运行效率比较高 C .c->.exe 组合:anaconda+pycharm、python+pychar…

答题判题程序终版与家居强电电路模拟程序两次迭代

目录: 一)前言 二)设计与分析 三)踩坑心得 四)改进建议 五)总结 一.前言 (1)答题判题程序-4: 【1】知识点:正则表达式,判题的逻辑思维能力,数据形式转换。 【2】题量:很大 【3】难度:很难 是前三次答题判题程序迭代优化的最终形态,难度较高,它对于类的种类的个…

AX6000 Zerotier 开机自启 持久化虚拟 MAC 地址

步骤:当前先配置好 Zerotier,保证可以拿到 IP 地址;将整个 Zerotier 复制到 /data 下;cp -a /var/lib/zerotier-one /data/zerotier删掉 /data/zerotier/ 下的 zerotier-one.pid 文件 在 /data/auto_ssh/auto_ssh.sh 末尾添加如下内容:cp -a /data/zerotier /var/lib/zero…

Java第二次Blog

7-4~6题目集 前言 这些题目主要用到对象与类的处理继承与多态的使用: 继承和多态是面向对象编程中相互关联的两个概念。继承为多态提供了基础,而多态则通过继承实现了代码的灵活性和可扩展性。 1.字符串处理:需要对输入的题目信息和答题信息进行字符串分割、提取和处理,以获…