Major in Computer Science
Minor in Computer Science
Double Majors
Major in Computer Science (Bachelor of Science)
Note: The curriculum below is effective Fall 2010 for any incoming Computer Science student. Current students may consider switching to this curriculum as well. See your advisor.
Computer Science Courses:
The first six (core) courses, which are taken in the freshman and sophomore years, lay a strong foundation for computer science majors. Each student then selects a Track in which to complete 6 advanced courses. Each Track has 2-3 Required Courses and a list of potential electives. A student may complete more than one Track if desired.
The flexibility of the Computer Science curriculum comes from requiring only six foundational (core) courses followed by one or more Tracks, which allow students to deepen their understanding in a specific area of computer science. Some intersection between tracks allows specialization in multiple areas, for example, Systems Programming and Software Engineering.
All beginning computer science majors are strongly urged to take CS 19100, Freshman Resources Seminar. This is a 1 credit course Computer Science students generally take their first semester. Students are equally encouraged to take CS 29100, Sophomore Development Seminar, and CS 39100, Junior Resource Seminar.
Core requirements (21 Credits): All CS core courses and all track requirements, regardless of department, must be completed with a grade of C or higher (effective Fall 2011).
| Course | Title | Credits | Semester |
| CS 18000 | Problem Solving and Object-Oriented Programming | 4 | 1 |
| CS 18200 | Foundations of Computer Science | 3 | 2 |
| CS 24000 | Programming in C | 3 | 2 |
| CS 25000 | Computer Architecture | 4 | 3-4 |
| CS 25100 | Data Structures and Algorithms | 3 | 3-4 |
| CS 25200 | Systems Programming | 4 | 4 |
Tracks:
Computational Science and Engineering Track: Introduce computer science basics of Computational Science and Engineering
Computer Graphics and Visualization Track: Prepare students for work and/or for graduate school in computer graphics, visualization, and related areas
Database and Information Systems Track: Designed to prepare students to become computer scientists who understand and can apply the principles and techniques of database design, algorithms for information retrieval, their strengths and limitations, and tools for the design of databases and information systems.
Foundations of Computer Science Track: Give students a broad education on foundational concepts, tools, and techniques underlying existing and future areas of computer science
Machine Intelligence Track: Prepare students to understand, and effectively apply in practice, the principles and techniques of data and knowledge representation, search, as well as learning and reasoning with data.
Programming Language Track: Prepare students to work in fields related to program understanding, analysis, manipulation and transformation.
Security Track: Prepare students to design and develop secure software and assess systems for secure operation.
Software Engineering Track: Prepare students to design and develop large software products, be familiar with analysis, design, testing, and maintenance, and work in teams.
Systems Programming Track: Prepare students to build low-level operating system software, system tools, and programs that communicate over a network.
Mathematics Courses: 7-8 credits
In addition to the College of Science degree requirements (Science 2007 or Pre-Fall 2007), students must complete the third level of calculus (MA 26100, MA 17400, MA 18200, or MA 27100) and a course in linear algebra (MA 26500 or MA 35100).
| Course | Title | Credits | Semester |
| MA 26100, MA 17400, MA 18200 or MA 27100 |
Multivariate Calculus, Multivariable Calculus, Honors Calculus II or Several Variable Calculus |
4-5 | 1-3 |
| MA 26500 or MA 35100 |
Linear Algebra or Elementary Linear Algebra |
3 | 1-3 |
College of Science Requirement Restrictions
| Teambuilding and Collaboration | |
| Module | No departmental restrictions |
| Experience (OR Approved Combination) | |
| Lab Science (Sequence) | No departmental restrictions |
| Mathematics/Statistics/Computer Science |
| MA 16100, 16500 |
| MA 16200, 16600, 17300, 18100 |
| STAT 35000, 51100 |
| CS 17700, 18000 |
| Composition and Presentation | |
| ENGL 10600, 10800 | No departmental restrictions |
| Tech Writing/Presenting | |
| OR Tech Writing | |
| Tech Presenting | |
| Language and Culture | |
| Language 101 | No departmental restrictions |
| Language 102 | |
| Language 201/Culture/Diversity | |
| OR an Approved Study Abroad | |
| General Education (≥ 9credits) | |
| Sequence Gen Ed I | No departmental restrictions |
| Gen Ed II | |
| AND Additional Gen Ed | |
| Great Issues | No departmental restrictions |
| Multidisciplinary | Math minor or dual major courses may not be used to satisfy this requirement |
Minor Concentration in Computer Sciences
To obtain a minor concentration in Computer Sciences, students must pass, with grades of A, B, or C, five CS courses that fulfill CS major requirements. All five courses must be taken at Purdue University.
The Course Prerequisite Chart may be helpful in selecting the five courses.
Double Majors
Many Purdue students choose to double major or pick up a minor. In Computer Science, the most popular double-major is mathematics but another very popular choice is business or management information systems.
| This page lists only some of the requirements for a Computer Science degree from Purdue. Additional courses and more details are provided at the undergraduate curriculum page. |