CSCI 171:  Introduction to Programming

 

Instructor:  Ken Johnson


Prerequisites:  CSCI 170, CSCI 215 or programming experience


WR: Persuasive

 

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.