Pick a problem (should be non-trivial) and write a detailed algorithm for that problem.
Do not forget that an algorithm has the following pieces:
1. Describe the problem
o this might be what a boss gives you
2. Formulate the problem
o restate to make sure you understand
o will state preferences or restrictions
o this might often be the hardest part
3. Design the algorithm
o Make sure all cases accounted for
o This can be words, pseudo code or a flow chart or a combination of all
4. Analyze the algorithm
5. Add possible extensions
o Cases not accounted for?
o Other possibilities?
6. Test the algorithm (at least 2 cases)
o Actually trace your algorithm with two cases – one that should work and one that should not work
o Should be a step by step trace
Don’t forget an algorithm should have the following properties: Input, Output, Precision, Determinism, Finiteness, Correctness, and Generality.
The final product needs be typed up and submitted in soft copy (modifiable file … .rtf or .doc or .docx, not .pdf) via the portal. Length is dependent on the problem but should be sufficient to cover the subject in detail. Grade will be based on completeness and level of effort.
Ø Staff and/or resource scheduling
Ø Improve efficiency of some “thing” at work or home
Ø How to build a computer
Think about a process at work that you think is broke that could be improved upon, something in your everyday life that could be improved, or something that you do re