This course will introduce students with no prior programming experience to the fundamentals of computer programming. These are foundation concepts for nearly all modern programming languages including Visual Basic- C++- C# and Java. Topics include sequence- repetition- and selection control structures. Advance topics include arrays- file I/O- and an introduction to the principles of object-oriented programming. One or more high-level programming languages will be used to reinforce the general concepts presented in this course.
Upon completion of the course, the student will be able to do the following:
- Describe and apply the steps in the program development cycle.
- Demonstrate mastery of program notation concepts through construction of simple algorithms, flowcharts, and corresponding pseudo-code.
- Contrast and compare high-level programming languages as to suitability to a task.
- Demonstrate the proper use of programming syntax that includes the effective and appropriate use of variables, expressions, and functions.
- Apply appropriate Sequential, Repetition, and Selection control structures to solve specific programming problems.
- Demonstrate the role of arrays and File I/O through a language specific application of these techniques.
Student Learning Outcomes
- Create a flowchart to document a program design for a simple straight-line process.
- Prepare a program design using pseudo-code for a problem scenario that involves conditional processing.
- Code and execute a computer program given a program design in pseudo-code.
- Code a simple (operations share the same level of precedence) algebraic expression in the target language.
- Code a complex (operations do not share the same level of precedence) algebraic expression in the target language.