General problem solving and the algorithm development process. Simple data types, sequence, selection, repetition, functions, records, files, and one-dimensional arrays. Concepts of top-down program design, testing, functional decomposition, and documentation using good programming style. A computer use course; higher level language such as C++ or Java.
Students will be able to: 1) Explain the problem solving process used by developers and its practical implications. 2) Examine fundamental primitive types in Java and the operators which operate on them. 3) Describe the process of employing the three basic logical constructs (sequence, selection, and iteration) to formulate algorithms to solve problems using Java. 3) Discuss the implementation of the logical constructs using control statements in Java. 4) Develop and document well-structured Java programs to solve simple problems. 5) Apply several introductory programming concepts such as function calls, parameter passing, scope/lifetime, Object-oriented Programming techniques, methods, etc.