2026-2027 Course Catalog – Computer Science

◄ Mathematics

Computer Science

CL College Level

DC Dual Credit

CMP4001
Computing Foundations (CL)

Prerequisite: None
Co-requisite: None
Credit: 1 credit
Offered: Fall or Spring

Computers and the internet have revolutionized the way we access and disseminate information. As technology continues to change at an ever-increasing pace, the need for students to gain a foundational understanding of computer science is clear. Computing Foundations for a Digital Age is designed to introduce students to five major topics within computer science including computing systems, networks and the internet, data and analysis, algorithms and planning, and impacts of computing. The course introduces foundational computing concepts while exploring current events and building critical thinking, collaboration, problem solving, and other important skills that are invaluable for life in a global and technologically advancing society.

CMP4301
Computer Science II: Programming C++ (CL)

Prerequisite: None
Co-requisite: Computer Science II: Programming C++ Lab (CMP04301L)
Credit: 1.5 credit
Offered: Fall

Computer Science II explores and builds skills in programming and a basic understanding of the fundamentals of procedural program development using structured, modular concepts. Discussions will include the role of data types, variables, structures, addressable memory locations, arrays and pointers, and data file access methods. An emphasis on logical program design using a modular approach, which involves task-oriented program functions.

Fulfills a laboratory science course requirement.

CMP4302
Computer Science II: Programming Python (CL)

Prerequisite: None
Co-requisite: Computer Science II: Programming Python Lab (CMP04302L)
Credit: 1.5 credit
Offered: Spring

This semester of Computer Science II is an introduction to visual programming using Python, a high-level language, and an established programming paradigm. Developing problem solving skills and programming techniques will be emphasized. Skills learned in this course will be applied to computer gaming and software development.

Fulfills a laboratory science course requirement.

CMP4501/4502
AP Computer Science Principles 1 and 2 (CL)

Prerequisite: Prereq for spring is successful completion of fall AP Computer Science Principles
Co-requisite: AP Computer Science Principles 1 and 2 Lab (CMP4501L/CMP4502L)
Credit: 1.5 credit
Offered: Fall/Spring Sequence

The AP Computer Science Principles course is designed to be equivalent to a first-semester introductory college computing course. In this course, students will develop computational thinking skills vital for success across all disciplines, such as using computational tools to analyze and study data and working with large data sets to analyze, visualize, and draw conclusions from trends. The course engages students in the creative aspects of the field by allowing them to develop computational artifacts based on their interests. Students will also develop effective communication and collaboration skills by working individually and collaboratively to solve problems, and will discuss and write about the impacts these solutions could have on their community, society, and the world.

CMP04511/04512
AP Computer Science A 1, 2 (DC)

Prerequisite: Fall: – Computer Science II: Programming C++ or Computer Science II: Programming Python, or experience in structured programming language and permission of instructor
Spring: – Successful completion of AP Computer Science A 1.
Co-requisite: Fall – AP Computer Science A 1 Lab (CMP04511L)
Spring – AP Computer Science A 2 Lab (CMP04512L)
Credit: 1.5 credits
Offered: Fall/Spring Sequence

This course uses a high-level, object-oriented programming language (Java). Students will learn syntax and the development of algorithms. The emphasis is on developing problem-solving skills and programming techniques. This course is designed for students with a computer programming background who desire a more challenging programming course. Semester 1 topics will include defining variables, primitive types vs. objects, methods, strings, if/else conditionals, loops, one- and two-dimensional arrays, array lists, inheritance, interfaces, abstract classes, basic input/output files and using applets, error handling, testing and debugging. Semester 2 topics will include using data structures such as linked lists, stacks, queues, binary trees, sequential and binary searching, sorting, traversing trees, and hashing. Laboratory activities include the required AP Computer Science A lab exercises.

Successful completion of this course will prepare the student for the Advanced Placement Computer Science A exam.

Fulfills a laboratory science course requirement.

* Ball State University offers 4 college credit hours in CS 120 to students who complete the first semester of this course and 4 college credit hours in CS 121 to students who complete the second semester of this course. Refer to the Dual Credit section for details on enrollment and fees.

Science: Physics Emphasis ►

https://academy.bsu.edu/catalog/computer-science/