This shows you the differences between two versions of the page.
|
queues [2015/12/23 17:23] hutch |
queues [2015/12/23 17:34] (current) hutch |
||
|---|---|---|---|
| Line 14: | Line 14: | ||
| - Your queue_runTest() must do at least the following: | - Your queue_runTest() must do at least the following: | ||
| - test all of the functions listed in queue.h. | - test all of the functions listed in queue.h. | ||
| - | - perform 5 overwritePush(), followed by 3 pop(), followed by 5 overwritePush(), followed by queue_print(). Then, perform readElementAt() for each value remaining in the queue to verify that the contents are correct. Was will verify that your test code performs at least these functions. | + | - perform 5 overwritePush(), followed by 3 pop(), followed by 5 overwritePush(), followed by queue_print(). Then, perform readElementAt() for each value remaining in the queue to verify that the contents are correct. TAs will verify that your test code performs at least these functions. |
| - You must follow the same [[http://ecen330wiki.groups.et.byu.net/wiki/doku.php?id=coding_standards|coding standards]] as was done for ECEN 330. | - You must follow the same [[http://ecen330wiki.groups.et.byu.net/wiki/doku.php?id=coding_standards|coding standards]] as was done for ECEN 330. | ||
| - You are not allowed to pass off your code if it has more than 5 coding-standard infractions. | - You are not allowed to pass off your code if it has more than 5 coding-standard infractions. | ||
| Line 20: | Line 20: | ||
| ---- | ---- | ||
| - | ===== Passoff Requirements ===== | + | ===== Pass-Off Requirements ===== |
| - Your code must follow the coding standard. The TAs will review your source code and not allow you to pass off if you have more than 5 infractions of the source-code standard. | - Your code must follow the coding standard. The TAs will review your source code and not allow you to pass off if you have more than 5 infractions of the source-code standard. | ||
| - | - Staple the source-code pass-off sheet to the front of your source code. | + | - Staple the {{::codingstandardchecklist.pdf|source-code pass-off sheet}} to the front of your source code. Make sure to fill in the name, lab-number, and submission date. |
| - Ensure that the queue_print() function prints out the contents of the queue in order, from oldest value to newest value. | - Ensure that the queue_print() function prints out the contents of the queue in order, from oldest value to newest value. | ||
| - Ensure that the queue_runTest() function performs the operations listed in the requirements section above. | - Ensure that the queue_runTest() function performs the operations listed in the requirements section above. | ||
| Line 28: | Line 28: | ||
| ---- | ---- | ||
| - | ===== TA Passoff Notes ===== | + | ===== TA Pass-Off Notes ===== |
| - Quickly review the source code before passing off. Do not pass off if the code has more than 5 coding-standard infractions. Students whose code has many coding-standard infractions must correct their code before passing off the milestone. | - Quickly review the source code before passing off. Do not pass off if the code has more than 5 coding-standard infractions. Students whose code has many coding-standard infractions must correct their code before passing off the milestone. | ||
| - Ensure that the queue_print() function prints out the contents of the queue in order, from oldest value to newest value. | - Ensure that the queue_print() function prints out the contents of the queue in order, from oldest value to newest value. | ||
| Line 122: | Line 122: | ||
| ---- | ---- | ||
| - | ==== Bugs, bugs, bugs: what to do when your queue code doesn't pass the tests? ==== | + | ===== Bugs, bugs, bugs: what to do when your queue code doesn't pass the tests? ===== |
| - Make sure you implement ''queue_overwritePush()'' correctly. If the queue is full, remove an element and push the new element on the queue. If it is not full, just push the new value. | - Make sure you implement ''queue_overwritePush()'' correctly. If the queue is full, remove an element and push the new element on the queue. If it is not full, just push the new value. | ||
| - For those of you using the extra "empty space" in the queue to determine full/empty, make sure that you allocate one additional location of memory in ''queue_init()'', e.g., a queue of size 4 must be allocated with 5 locations. This does not apply to students who are using elementCount to determine full/empty. | - For those of you using the extra "empty space" in the queue to determine full/empty, make sure that you allocate one additional location of memory in ''queue_init()'', e.g., a queue of size 4 must be allocated with 5 locations. This does not apply to students who are using elementCount to determine full/empty. | ||
| Line 129: | Line 129: | ||
| ---- | ---- | ||
| - | ==== Source Code ==== | + | ===== Source Code ===== |
| I have provided the source code for your ".h" file and part of the code for your ".c" file. As I said before, you are not required to implement the queue as I have shown here. However, you must implement all of the functions that are contained in the ".h" file. | I have provided the source code for your ".h" file and part of the code for your ".c" file. As I said before, you are not required to implement the queue as I have shown here. However, you must implement all of the functions that are contained in the ".h" file. | ||
| - | <code> | + | <file c queue.h> |
| /* | /* | ||
| Line 200: | Line 200: | ||
| #endif /* QUEUE_H_ */ | #endif /* QUEUE_H_ */ | ||
| - | </code> | + | </file> |
| ------------- | ------------- | ||
| - | <code C> | + | <file C queue.c> |
| /* | /* | ||
| Line 229: | Line 229: | ||
| } | } | ||
| - | </code> | + | </file> |
| ---- | ---- | ||
| Line 239: | Line 239: | ||
| - If your queue fails this test, it means that your queue_runTest() code is not very thorough. As you fix your queue code, update your queue_runTest() function so that it more fully tests your queue. | - If your queue fails this test, it means that your queue_runTest() code is not very thorough. As you fix your queue code, update your queue_runTest() function so that it more fully tests your queue. | ||
| - If your queue fails the more thorough test code that I provide, it is your responsibility to add code to your queue_runTest() code until it detects the bug. | - If your queue fails the more thorough test code that I provide, it is your responsibility to add code to your queue_runTest() code until it detects the bug. | ||
| - | |||
| - | Common Bugs: | ||
| - | |||
| <code C> | <code C> | ||
| Line 349: | Line 346: | ||
| </code> | </code> | ||
| - | |||