Information about

CSCI 250

Discrete Structures

**Major Requirement (for B.A. and B.S.)**

Course Description:
Students frequently ask, “What math do I need to know to be a computer science major?” The answer is: the math that makes up CSCI 250, Discrete Structures.

This course collects together all of the math topics that are important in the core of computer science and presents them to you in seven weeks. The topics here are essential for success both as a computer science student in later coursework and as a computer scientist in the workplace.

The topics covered and their application in computer science are:

Propositional Logic Determining the logical structure of programs and reasoning about the correctness of programs
Finding efficient data structures and understanding how to manipulate them effectively
Important for creating algorithms and understanding the organization of databases
Useful for doing recursion efficiently and effectively and in determining the efficiency of any program
Important tool for analysis of algorithms and programs for efficiency and for understanding how machines execute code
Facilitates the construction of algorithms so that all possible cases are handled
Boolean Algebra Know how logic circuits are designed and operate and improve ability to apply logic to program design
Positional Number Systems Know how numbers are represented in the computer and how to exploit that knowledge to do computations with less error and more efficiently

Offered each year during the spring semester.

This course is usually taught by Dr. Cusack or Dr. DeJongh.

CSCI 112 or equivalent. See the department policy on prerequisites.

Comments from Previous Students:

Catalog Description:
An introduction to the discrete mathematical structures that are fundamental to the field of Computer Science. Topics include propositional logic, sets, Boolean algebra, switching circuits, functions, relations, and combinatorics. Prerequisite: Computer Science 112.
Two Credits Staff Spring Semester