This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
haas:spring2015:data:projects:sll1 [2015/02/21 17:37] – [list library (so far)] wedge | haas:spring2015:data:projects:sll1 [2015/03/10 12:28] (current) – [list library] wedge | ||
---|---|---|---|
Line 16: | Line 16: | ||
We've commenced on our list explorations, | We've commenced on our list explorations, | ||
- | In this project, we continue our list implementation by exploring the appending of nodes to a list, searching for nodes within a list, copying a list, and displaying a list in reverse. | + | In this project, we continue our list implementation by exploring the appending of nodes to a list, searching for nodes within a list, copying a list, displaying a list in reverse, and comparing two lists for equality. |
=====Project Overview===== | =====Project Overview===== | ||
Line 30: | Line 30: | ||
List *cplist(List *); // duplicate existing list | List *cplist(List *); // duplicate existing list | ||
void displayb(List *, int); // display list backwards | void displayb(List *, int); // display list backwards | ||
+ | int compare(List *, List *); // compare two lists for equality | ||
+ | |||
</ | </ | ||
Line 39: | Line 41: | ||
====list library==== | ====list library==== | ||
- | In **src/ | + | In **src/ |
* **append.c** | * **append.c** | ||
Line 45: | Line 47: | ||
* **search.c** | * **search.c** | ||
* **displayb.c** - which will handle displaying the list backwards | * **displayb.c** - which will handle displaying the list backwards | ||
+ | * **compare.c** | ||
- | Take a look at the code there. These are the files that contain functions which will be compiled and archived into the node library (**liblist.a**) we will be using in this and future projects. | + | Take a look at the code there. These are the files that contain functions which will be compiled and archived into the list library (**liblist.a**) we will be using in this and future projects. |
Figure out what is going on, make sure you understand it. | Figure out what is going on, make sure you understand it. | ||
Line 61: | Line 64: | ||
* **unit-searchlist.c** - unit test for **searchlist()** library function | * **unit-searchlist.c** - unit test for **searchlist()** library function | ||
* **unit-displayb.c** | * **unit-displayb.c** | ||
+ | * **unit-compare.c** | ||
These are complete runnable programs (when compiled, and linked against the list library, which is all handled for you by the **Makefile** system in place). | These are complete runnable programs (when compiled, and linked against the list library, which is all handled for you by the **Makefile** system in place). | ||
Line 110: | Line 114: | ||
[setpos] Total: | [setpos] Total: | ||
[append] Total: | [append] Total: | ||
- | [displayb] Total: | ||
[searchlist] Total: | [searchlist] Total: | ||
[cplist] Total: | [cplist] Total: | ||
+ | [displayb] Total: | ||
+ | | ||
====================================================== | ====================================================== | ||
- | | + | |
====================================================== | ====================================================== | ||
lab46: | lab46: | ||
Line 122: | Line 127: | ||
To be successful in this project, the following criteria must be met: | To be successful in this project, the following criteria must be met: | ||
- | * Code must compile cleanly (no warnings or errors) | + | * Project must be submit on time, by the posted deadline. |
+ | * Late submissions will lose 25% credit per day, with the submission window closing on the 4th day following the deadline. | ||
+ | * All code must compile cleanly (no warnings or errors) | ||
* all requested functions must be implemented in the related library | * all requested functions must be implemented in the related library | ||
+ | * all requested functionality must conform to stated requirements (either on this project page or in comment banner in source code files themselves). | ||
* Executed programs must display in a manner similar to provided output | * Executed programs must display in a manner similar to provided output | ||
+ | * output formatted, where applicable, must match that of project requirements | ||
* Processing must be correct based on input given and output requested | * Processing must be correct based on input given and output requested | ||
- | * Output must be correct | + | * Output, if applicable, |
* Code must be nicely and consistently indented (you may use the **indent** tool) | * Code must be nicely and consistently indented (you may use the **indent** tool) | ||
* Code must be commented | * Code must be commented | ||
+ | * Any "to be implemented" | ||
+ | * these "to be implemented" | ||
+ | * Sufficient comments explaining the point of provided logic **MUST** be present | ||
+ | * Any and all functions written must have, **at most**, 1 **return** statement | ||
+ | * points will be lost for solutions containing multiple return statements in a function. | ||
* Track/ | * Track/ | ||
* Submit a copy of your source code to me using the **submit** tool (**make submit** will do this) by the deadline. | * Submit a copy of your source code to me using the **submit** tool (**make submit** will do this) by the deadline. |