Courses Offered

Computer Science

A list of regularly offered courses follows. The indication of when a course will be offered is based on the best projection of the department and can be subject to change.

Please note the key for the following abbreviations: (A) Arts; (H) Humanities; (S) Social Sciences; (N) Natural Sciences with Laboratory; (LS) Language Studies requirement; (NSP) Natural Science in Perspective; (NW) Non-Western Cultures requirement.

CPS170. Computer Science I. Every Fall

A first course in computer science and computational thinking using the Python programming language. Topics include program development, control flow structures, functions and applying this knowledge towards building applications in diverse domains such as graphics, linguistics and bioinformatics. Has a required lab, but does not satisfy the "Natural Science with Laboratory" requirement. Substitutes for CPS 150 in the Computer Science minor. Students may not receive credit for both CPS 150 and CPS 170. Prerequisite: twelfth-grade mathematics or MAT 105. Staff

CPS270. Computer Science II. Every Spring

A second course in computer science and computational thinking, focusing on data structures and advanced programming. Topics include implementation and applications of data structures such as stacks, queues, linked lists, trees and graphs. Has a required lab, but does not satisfy the "Natural Science with Laboratory" requirement. Substitutes for CPS 260 in the Computer Science minor. Students may not receive credit for both CPS 260 and CPS 270. Prerequisite: CPS 150, CPS 170 or permission of the instructor. Staff

CPS261. Data Structures and Algorithms II. Fall 2009

Trees, graphs and networks; further analysis of algorithms and their efficiency. Prerequisite: CPS 260. A. Weaver

CPS27—279. Topics in Computer Science.

Intermediate level courses.

CPS280. Operating Systems. Offered in 2010—2011

The design of software to manage computing resources, especially process management, memory management and file management. Data structures and algorithms for operating systems, especially for resolving conflicts between processes competing for resources. Inter-process communication. Design of a hierarchical file system. Practical examples from the Apple Macintosh and UNIX operating system. Prerequisite: CPS 150, 260. Staff

CPS291. Directed Reading.

Reading directed by the Computer Science staff. Permission of chairperson.

CPS338. Computational Mathematics. Offered in 2010—2011

Numerical analysis as implemented on computers. Polynomial and rational approximations, numerical differentiation and integration, systems of linear equations, matrix inversion, eigenvalues, first and second order differential equations. Prerequisites: CPS 150, MAT 229. Same as MAT 338. Staff

CPS370—379. Topics in Computer Science.

Study of specialized areas of Computer Science.

CPS390. Independent Study.

Independent study directed by Computer Science staff. Permission of chairperson.

CPS391. Directed Reading.

Reading directed by the Computer Science staff. Permission of chairperson. Readings in software engineering and software design; the development of a large-scale software project. Open by permission of instructor.

CPS490. Independent Study.

Independent study directed by Computer Science staff. Permission of chairperson.

CPS491. Directed Reading.

Reading directed by the Computer Science staff. Permission of chairperson.

TOPICS COURSES EXPECTED TO BE OFFERED IN 2009—2010

Introduction to Bioinformatics.

Recreational Programming.

Computer Organization.

 

©2009 Franklin & Marshall College  |  Lancaster, PA  |  717-291-3911