Course Goals:
Students should be able to:
1. Demonstrate problem solving approaches. (i.e. break
problems into logical pieces that can be solved (programmed) independently;
including approximation approaches, solving a continuous problem with discrete
approach, randomness approach, vector/matrix approaches are key in many
engineering majors)
2. Develop and evaluate algorithms. (i.e. for solving
problems in a suitable language and environment; concern with accuracy,
efficiency)
3. Demonstrate knowledge of the limits and capabilities
of computational approaches to problem solving, including accuracy, overflow,
and computational limitations.
4. Develop and apply test cases that can be used to
verify the accuracy of programmed solution
5. Implement their design and algorithms in an
appropriate programming language and environment utilizing the following
fundamental programming constructs: arithmetic statements (both scalar and
vector/matrix), I/O (including file I/O), selection, iteration, functions (both
external libraries and thier own), and linear data
structures. Documentation of their code and good programming practice are also
required.
6. Identify and correct both syntactic and semantic
errors in code and use a debugging environment to resolve them
7. Present data in a meaningful way using packaged
plotting and graphing systems.