Computer Science - Requirements

Computational thinking and processes permeate our daily lives, revolutionizing our understanding of the natural world, our tools, and of ourselves. Knowledge of computer science has become highly valued in such diverse fields as psychology, biology, and even philosophy. A degree in Computer Science gives one both marketable skills and intellectual breadth that can be applied to any career choice.

The Computer Science program is dedicated to giving each student a personal, challenging, and thoroughly enjoyable experience.

The Computer Science program offers both a B.S. degree in computer science, a double major in computer science and mathematics, and a minor in computer science that makes a strong addition to one's resume. See the course description for CS 397 to learn about internship possibilities. All degrees are received through the Department of Mathematics and Computer Science.

 

Major in Computer Science

To earn a B.S. in computer science students complete:

CS 141 Introduction to CS and Programming I
CS 142 Introduction to CS and Programming II 
CS 221 Computer Organization and Assembler
CS 231 Discrete Mathematics
CS 232 Data Structures
CS 252 Software Construction
CS 342 Theory of Computation
CS 343 Analysis of Algorithms

  • One of: CS 353 Principles of Compiler Design or CS 354 Theory of Programming Languages
  • Two additional 300 level CS courses
  • MA 171 Calculus I
  • One of: MA 172 Calculus II or An additional 200 level mathematics course
  • One semester of a lab science.

Minor in Computer Science

To earn a minor, students complete:

CS 141 Introduction to CS and Programming I
CS 142 Introduction to CS and Programming II 
CS 232 Data Structures

  • One of: CS 221 Computer Organization and Assembler or CS 252 Foundations of Software Construction
  • One additional 300 level CS course*
  • *Math majors may use MA/CS 342 to satisfy this requirement.

Double Major in Computer Science and Mathematics

To earn a double major in computer science and mathematics, students complete:

MA 171 Differential Calculus
MA 172 Integral Calculus
MA/CS 231 Discrete Mathematics
MA 235 Linear Algebra
MA 271 Multivariable Calculus I
MA 272 Multivariable Calculus II
MA 334 Abstract Algebra
MA 371 Real Analysis
CS/MA 141 Introduction to CS and Programming I
CS 142 Introduction to CS and Programming II
CS 221 Computer Organization and Assembler
CS 232 Data Structures
CS 252 Foundations of Software Construction
CS/ MA 342 Theory of Computation
CS 343 Analysis of Algorithms
CS/MA 377 Numerical Analysis

  • One of: CS 353 Principles of Compiler Design or CS 354 Theory of Programming Languages
  • 3 additional 300 level MA course
  • One semester of a lab science