[2017 class object-oriented programming] 1st achievement ranking
Job address
http://www.cnblogs.com/easteast/p/8846446.html
Grading Criteria
The full score of this assignment is 20 points, including 15 points for mutual test and 5 points for blog & MOOC learning & PTA completion.
Summarize
Compared with the winter vacation homework, the difficulty of this homework is not in the code itself, but in improving everyone's perceptual understanding of "object-oriented". Many students also mentioned the problems encountered in the coding process and their thoughts on OO thinking in the blog summary, such as @Ace_Monster 's blog.
Regarding the drawing of class diagrams, it is recommended that you use UML tools to draw manually in the design stage, and explain the design ideas in the blog : Why choose such a class design scheme? What are the benefits of this design? Instead of coding first, then generating it directly with the IDE and pasting it without modification. Some students still don't understand what a "class diagram" should look like, and recommend Beihang's excellent homework: http://www.cnblogs.com/jeffan/p/bingoit2.html .
In this work, the mutual testing mechanism was introduced for the first time.
If a bug is detected, 1 point will be deducted from the logic point (the tester will get 1 point), and the maximum deduction can be 0. Multiple bugs of the same category are only counted as 1 point;
If the code is not standardized, the normative points will be deducted as appropriate (for example, classes and objects are not written according to object-oriented thinking, but are generally written in a main.cpp, and the variable names use Chinese pinyin or meaningless simple letters aa/bb/x/ y etc.). Please find a C++ coding specification from the Internet, and choose some suitable parts to study according to the more detailed specification.
When evaluating bugs, hopefully it's clear:
- What counts as a bug
- How to tell if bugs belong to the same category
The judgment of bugs should be traced back to the requirements of the original assignment , that is, software behavior that is inconsistent with expectations. In this operation, the final result of elevator scheduling is not required to be optimal, so the result exceeding the shortest time is not regarded as a bug. In the evaluation submitted by the students, reasonable bugs include:
fprintf(fp, "电梯在%d时刻停在%d楼", current_time, current_floor);
Does not meet the title output requirements- When the
2/0 1 2/1 2 1
input is output1 2/3 2
, it is impossible for the elevator to run to the second floor in 1s.- The problem requires that the output is the time and floor of the elevator. It is possible that the elevator will stop when it is about to pick up passengers; but the elevator in the code of the tested party will only output the time and floor when the elevator drops off the elevator.
- ...
Score
student ID | total score |
---|---|
031702229 | 20 |
031702307 | 20 |
031702319 | 20 |
031702345 | 20 |
031702413 | 20 |
031702614 | 20 |
031702629 | 20 |
031702645 | 20 |
031702647 | 20 |
031702333 | 19 |
031702122 | 18 |
031702203 | 18 |
031702646 | 18 |
031702105 | 17 |
031702116 | 17 |
031702442 | 17 |
031702617 | 16 |
031702202 | 15 |
031702214 | 15 |
031702113 | 15 |
031702440 | 14 |
031702332 | 13 |
031702147 | 12 |
031702148 | 10 |
031702347 | 8 |
031702520 | 7 |
031702201 | 6 |
031702109 | 5 |
031702112 | 5 |
031702138 | 5 |
031702221 | 5 |
031702235 | 5 |
031702305 | 5 |
031702334 | 5 |
031702349 | 5 |
031702402 | 5 |
031702403 | 5 |
031702414 | 5 |
031702501 | 5 |
031702512 | 5 |
031702517 | 5 |
031702524 | 5 |
031702548 | 5 |
031702615 | 5 |
031702628 | 5 |
031702644 | 5 |
031702104 | 0 |
031702216 | 0 |
031702224 | 0 |
031702318 | 0 |
031702401 | 0 |
031702404 | 0 |
031702613 | 0 |