Majors/Minors
The Department of Computer Science at Purdue offers a Bachelor of Science degree in Computer Science. Students from other majors and colleges can also minor in computer science, and many computer science majors choose to double major. Click on the links below to see more about the different degree options in computer science.
Major in Computer Science (Bachelor of Science)
Note: The curriculum below is effective Fall 2010 for any incoming Computer Science student.
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 at least 6 advanced courses. Each Track has 2-4 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, 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
Approved course or approved experience. Cannot be met through credit by exam.
Must be two courses in sequence in the same department.
No departmental restrictions
Mathematics/Statistics/Computer Science
- ENGL 10600, 10800, HONR 19903
- Tech Writing/Presenting OR Tech Writing
- Tech Presenting
No departmental restrictions
- Language 101
- Language 102
- Language 201/Culture/Diversity
- OR an Approved Study Abroad
No departmental restrictions
General Education (≥ 9credits)
- Sequence Gen Ed I
- Gen Ed II
- AND Additional Gen Ed
No departmental restrictions
No departmental restrictions
Math minor or dual major courses may not be used to satisfy this requirement
Minor Concentration in Computer Sciences
The Course Prerequisite Chart (PDF) may be helpful in selecting the five courses.
Many Purdue students choose to double major or pick up a minor. In Computer Science, popular dual majors are mathematics, statistics and management.
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.