- Mathematics 408C or 408N and 408S
- Mathematics 340L or Statistics and Data Sciences 329C. Mathematics 341 may substitute for 340L.
- Statistics and Data Sciences 321. Mathematics 362K may substitute for this requirement.
- Primary science:
- Theory: Computer Science 311 or 311H, and 331 or 331H
- Programming: Computer Science 312 and 314 or 314H
- Systems: Computer Science 429 or 429H, and 439 or 439H
- Twelve additional semester hours of approved upper-division computer science
- Secondary science:
- Six semester hours of majors-level coursework chosen from a single field of study: biology, chemistry, or physics. It is recommended that students select courses that will also fulfill the Natural Science and Technology Part I core curriculum requirement.
- At least 17 hours of computer science upper-division coursework must be completed in residence.
An undergraduate may not enroll in any computer science course more than once without written consent of an undergraduate advisor in computer science. No student may enroll in any computer science course more than twice. No student may take more than three upper-division computer science courses in a semester without written consent of an undergraduate advisor in computer science. All transfer coursework must be approved by faculty before it can count towards a computer science degree, except where equivalency is specified by state regulation.