Instructor: Ken Johnson
Prerequisites: CSCI 170, CSCI 215 or programming experience
Material
and skills covered:
This
course is designed for students who would rather be the creators of computer
solutions than simply the users of computer software. In order to be a creator
of computer solutions one must understand the computer, how it reacts to
programs, and what these programs can accomplish. The programming environment
is introduced as well as basic high-level language features. Topics include
data representation; arithmetic, logical, and Boolean operations; looping; program
structure and procedure calls; input/output commands; and single-dimensional
arrays.
Methods used:
Individual study of the course textbook
is supplemented by both the professor’s lectures and class discussion. Much
hands-on programming opportunity is provided through frequent programming
exercises. Students work in teams to review other team members’ program code,
thereby building skills in technical topics, teamwork, and leadership.
The department maintains its own
computer laboratory for student use.
Grade determined by:
Grades are assigned to frequent topical
tests. Written assignments and programming projects are expected to be
completed on time and demonstrate increasing mastery of the material. A portion
of the final grade is allocated to the professor’s evaluation of class
participation.
Attendance policy:
Knowledge of programming cannot be
mastered without regular class attendance. Students are expected to attend
class regularly unless an excused absence is arranged with the professor. Class
starts every day on time. Habitual absence and/or tardiness will detract from
the class participation part of the final grade as well as performance on tests
and programming exercises.
Comments:
Students learn C++ in this course. C++ is an “industrial strength” programming language, widely used in the development of both systems and applications. It requires great attention to detail, but in return, the programmer has access to a very powerful and flexible programming language. The program design and coding techniques acquired in this course will provide a solid foundation for learning other programming languages and advanced computer concepts. Overall, the class offers a strong foundation for logical problem solving in many fields.