Hi all,
Please read the rules carefully. The rules can be updated at any stage so use the live rules rather than saving them to a file. Note that you can easily avoid these by eliminating them using a checklist.
You will get a zero for the entire assessment if any of the following is true,
- any of the files contain an infinite loop. this is indicated by a right-pointing blue triangle AGAINST A JUNIT TEST during execution, and the fact that the execution of JUnit tests never finishes. Note that blue upward pointing triangles against functions in the package explorer mean something else.
- any of the files contain a compilation error. this is indicated by a red cross AGAINST YOUR PROJECT. If your project does not have a red cross against it, you are safe on this one. Note JUnit errors (red crosses in outcomes of JUnit tests) are not the same as compilation error.
- any of the files result in StackOverflowError.
- any of the files are named incorrectly or if the assignment is not in the required format.
- any use of functions defined outside the submitted files (unless explicitly allowed). Notably, use of java.util.Arrays class (obviously, you can create arrays and use .length and [some index] on them), LargeInteger class, StringBuilder class, methods from Math class (such as Math.max, Math.min, Math.abs() ...) or Integer class (such as Integer.parseInt) are prohibited for all submissions. Use of built-in ArrayLists functions (list.get(i), list.add(), list.remove(), ...) is prohibited for all submissions except the one for built-in ArrayList.
- execution time exceeds the maximum permissible time to run all the tests, which will be specified in specs for each assessment (and if not specified, is 5 seconds by default).
- there is a dependency on files not provided as part of the template and/or not submitted. Any code (including helper functions or classes), should be put inside the files included in the template and required to be submitted.
- removal of any import besides the ones already existing in the template causing a compilation error.
- modifying (adding/removing/editing) package declarations.
- modifying anything in test files or modifying any method signature in files submitted.
- submitting file(s) besides the ones provided.
- use of lambdas.
- incorrect file name. For example, we ask for abcd.java, you cannot submit abcd(1).java or "abcd (1).java" or "My Program.java" or "ab cd.java"...
Programming structures you ARE allowed to use:
- variables,
- casting (For example, int x = (int)(4.5 - 2.7);)
- arithmetic and boolean operators,
- conditions,
- loops,
- break and continue statements,
- arrays,
- helper functions (create your own functions. especially useful to replace Math.min, Math.max, etc.),
- String objects and methods operating on String objects
- get, length, charAt, indexOf, lastIndexOf, substring, equals, equalsIgnoreCase, toLowerCase, toUpperCase, etc.
- The ternary operator (For example: int max = a > b ? a : b;). Don't get carried away with this.
- switch statement
All the best,
COMP1010 Teaching Team