ENGGEN 131, Semester Two, 2021 - 1 - C Programming Project ENGGEN131 C Project Marking CodeRunner is now set up for project marking. Please read this announcement carefully so you know what to expect. Deadlines You can mark your project any time between now and the project deadline (Sat 23rd October at 11:59pm). You are strongly encouraged to mark your project early, rather than leaving it until the last minute. CodeRunner has been configured so that you can mark one task at a time – you can begin marking the tasks you have finished now, even if you haven’t finished the whole project. The “Precheck” feature is enabled for each task to let you check your syntax errors within CodeRunner. As recommended for the labs, you should use this feature only once you have successfully compiled and executed your program for all kinds of test inputs in your IDE. Per task marking You will mark one task at a time. When marking a given task, you should only submit the code that is relevant to that task – CodeRunner will clearly remind you of the functions that are relevant to a given task. For example, for Task One, you will ONLY be submitting the InitialiseFloor() function (you can, of course, also submit any other “helper” functions that you have defined which are relevant to a given task). In other words, for Task One, you will only need to copy the function header and the lines of code you have defined for the InitialiseFloor() function, and submit those to CodeRunner, as shown below: void InitialiseFloor(int floor[NUM_ROWS][NUM_COLS], char entryboundary, int index) { .... .... .... } ENGGEN 131, Semester Two, 2021 - 2 - C Programming Project Marks The project is marked out of 60. Each task is worth 10 marks (there are 10 test cases per task, and each test case is worth 1 mark). When you submit your code for a given task, you will be shown the total number of marks that you have earned for that task (this is equal to the number of tests that your code passes). If you see the following: where you are shown “Passed all tests!”, then you have passed all of the tests for the task and will earn 10 out of 10 for that task. Hidden tests For each task, you will be shown only the first test case. All of the other tests cases will remain hidden. Penalties Just like in the labs, you can make more than one submission for a given task. The first two submissions that you make will not incur any penalty (i.e. 0% penalty). From the third submission onwards, you will incur a 10% penalty. This is equivalent to a 1 mark penalty for the task (as each task is worth 10 marks). The penalty scheme is as follows: 0, 0, 10, 20, 30, 40, 50, 60, 70 % The maximum penalty is 70% for any given task (and will be incurred upon the 9th incorrect submission). Style (comments, indentation) By now, you should be writing code that is well laid-out, indented clearly and consistently, and commented appropriately. This project is being marked for functionality, so there are no marks explicitly allocated for stylistic elements such as comments and indentation. However, submissions will be manually spot-checked, and code which is very poorly organized or entirely uncommented will accrue a penalty at our discretion ENGGEN 131, Semester Two, 2021 - 3 - C Programming Project All warnings treated as errors As you may have seen in the labs, code which generates any warning messages will be treated as incorrect. In such cases, a clear warning message will be shown by CodeRunner, and you should read this message to work out how to resolve the problem that is generating the warning. A common example would be declaring and assigning a value to a variable, but then never actually using that variable anywhere else in your code. Another common example is writing a function that should return a value, but nesting all of your “return” statements inside conditionals such that the compiler cannot determine (by looking at your static code) whether any “return” statement will actually be reached (because the compiler cannot work out whether a given condition will be true or false – this can only be determined when the code executes). Completing your marking When you have finished marking your project, please make sure that you click the “Submit all and finish” button as shown below: You will then be shown a final summary of your marks for the project. Plagiarism As discussed throughout the course, and emphasized recently in lectures, this project is an important assessment for the ENGGEN131 course. It is an individual project. You do not need to complete all of the tasks, but the tasks you do complete should be an accurate reflection of your capability. You may discuss ideas in general with other students, but writing code must be done by yourself. No exceptions. You must not give any other student a copy of your code in any form – and you must not receive code from any other student in any form. There are absolutely NO EXCEPTIONS to this rule. All submitted code will be checked for plagiarism violations, so please do not share code in any way. Enjoy! And on that happy note, enjoy! Remember that you have a simulation program (containeryard.c) which you can use to test your functions. If your simulation works correctly for a range of inputs, you can have high confidence that your project will perform well when marked. ENGGEN131 2021 C Project Dr Paramvir Singh Professional Teaching Fellow School of Computer Science The University of Auckland New Zealand
欢迎咨询51作业君