Requirements for the Computer Science major
The requirements for a Bachelor of Arts in computer science are 10 courses in computer science at the level of Computer Science 107/111 or above. One of the courses may be selected from a list of approved courses offered by other departments.
The 10 courses must include:
- Computer Science 107/111: Computer Science I
- Computer Science 112: Computer Science II
- Computer Science 201: The Mathematics of Computation OR Math 215: Abstract Mathematics I
- Computer Science 216: Data Structures
- Computer Science 221: Computer Organization and Assembly Language Programming
- Computer Science 301: Theory of Computation
- Computer Science 440: Advanced Systems Design (taken during the senior year)
Plus three CS elective courses (non-core) at the 200- or 300-level, optionally including at most one from the following list:
- Biology 251
- Mathematics 353 and 366
- Physics 240
- Psychology 315, 316 or 338
In addition to the 10 courses in computer science, students must take:
- Equivalent of Mathematics 111 or above (usually taken during the first year)
Bachelor of Science major in Computer Science
A Bachelor of Science major in Computer Science has the same requirements as a Bachelor of Arts major in Computer Science plus four additional courses from formal and/or natural science departments. At most two of the additional courses may be at the 100-level.
Requirements for the Computer Science minor
The minor in Computer Science consists of any six Computer Science courses numbered 107/111 or above and must include CS216.
Grade Requirements: All courses taken to satisfy the requirements for the major or minor must be taken using the A–F grading system. To advance to a course with prerequisites, a minimum grade of C– is required for each prerequisite course. A student completing a Computer Science major course may not concurrently or subsequently be enrolled in a prerequisite, alternate prerequisite, or non-major Computer Science course. For example,
- 216 disallows 103, 107, 111, 112.
- 112 disallows 103, 107, 111.
- 111 disallows 103, 107.
- 107 disallows 103, 111.