ToB企服应用市场:ToB评测及商务社交产业平台

标题: PTA三次作业 [打印本页]

作者: 花瓣小跑    时间: 2024-5-17 23:27
标题: PTA三次作业
1.媒介:
第一次作业难度较大,从无到有的设计,涉及到的主要类有Paper,Question,AnswerPaper,Main,主要题目方向为字符串判断与字符串处置惩罚(提取有用信息),判断对错算总分,配合一些Java自带的数据布局如ArrayList即可快速解决问题,第一次作业是后面作业的基础,需自行了解正则表达式等方法。第二次作业难度适中,题目在第一次作业前提下添加了试卷类,涉及较为复杂类引用,必要对类的引用有一定了解。第三次作业难度最高,在前两次作业基础上添加学生信息及删除题号,还添加了许多错误提示及错误提示优先级显示。这三次作业的难度可以说是逐次递增,必要学生在第一次作业建立精良的类布局,并在第二次作业中添加类,以及第三次作业给删除的题目添加标志以执行语句都是难点。这三次PTA作业观察了学生构建步伐框架的能力,以及正则表达式提取所需信息,ArrayList储存内容等方面的知识。
2.设计与分析:
第一次作业:
只需用AnswerPaper判断,Paper储存Question数组。由于当时还未学习ArrayList,使用数组储存,设计上采用两个字符串数组,一个数组装题目(题号与题目对应),一个数组装写的答案(题号与标准的答案对应),传递到AnswerPaper中举行比较。Question类封装题目信息,包括题号、题目内容、标准答案、作答;末了再将Question类封装进AnswerPaper类,其方法为判断答案与标准答案是否雷同,末了举行输出。
建立Question类储存数据
点击检察源码
  1. class Question{
  2.     private int num;
  3.     private String content;
  4.     private String standard_answer;
  5.     private String answer;
  6.     private boolean result;
  7.     public Question(){}
  8.     public Question(int num,String content,String standard_answer,String answer,boolean result){
  9.         this.num=num;
  10.         this.content=content;
  11.         this.standard_answer=standard_answer;
  12.         this.answer=answer;
  13.         this.result=result;
  14.     }
  15.     public String getStandard_Answer(){
  16.         return standard_answer;
  17.     }
  18.     public void setStandard_Answer(String standard_answer){
  19.         this.standard_answer=standard_answer;
  20.     }
  21.     public String getContent(){
  22.         return content;
  23.     }
  24.     public void setContent(String content){
  25.         this.content=content;
  26.     }
  27.     public int getNum(){
  28.         return num;
  29.     }
  30.     public void setNum(int num){
  31.         this.num=num;
  32.     }
  33.     public void setAnswer(String answer){
  34.         this.answer=answer;
  35.     }
  36.     public String getAnswer(){
  37.         return answer;
  38.     }
  39.     public void setResult(boolean result){
  40.         this.result=result;
  41.     }
  42.     public boolean getResult(){
  43.         return this.result;
  44.     }
  45.     public boolean TF(){
  46.         if(standard_answer==answer)
  47.         {
  48.             result=true;
  49.         }
  50.         else
  51.         {
  52.             result=false;
  53.         }
  54.         return result;
  55.     }
  56. }
复制代码
     建立AnswerPaper类以便判断点击检察源码[code]class AnswerPaper{    private Paper paper;    private Question []question=new Question[1000];    public AnswerPaper(Paper paper,String str,int num){        this.paper=paper;        String answer1;        boolean result;        String strs[]=str.split(" #");        for(int i=0;i




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4