-->
Pre-Requisites | None |
Co-Requisites | None |
Instructional Hours | 40 |
Instructional Mode | Lecture |
Delivery Mode | In-Person / Blended / Online |
This course, Discrete Mathematics for Programming (DA120), introduces students to the mathematical concepts and techniques essential for computer programming and algorithm analysis. Discrete mathematics is the branch of mathematics that deals with countable or distinct objects. In this course, students will learn about various topics in discrete mathematics, including logic, sets, combinatorics, graphs, trees, and discrete probability.
The course will emphasize the development of analytical and problem-solving skills, which are essential for computer programming. By the end of the course, students will have a solid understanding of the fundamental concepts of discrete mathematics and will be able to apply their knowledge to solve programming problems.
By the end of this course, students will be able to:
The course content will be presented through a series of lectures and problem-solving exercises. Students will be evaluated through weekly quizzes, four assignments, and a final exam.
Each week, students will be given a quiz to test their understanding of the material covered in the lectures. These quizzes will be short and will count towards a small percentage of the overall course grade.
Throughout the semester, students will be given four assignments that will require them to apply the concepts and techniques learned in the lectures to solve problems. These assignments will be more comprehensive than the weekly quizzes and will count towards a larger percentage of the overall course grade.
At the end of the semester, students will be given a final exam that will cover all the material presented in the lectures. This exam will count towards a significant percentage of the overall course grade.
The following is a week-by-week schedule of the lecture topics:
Week | Topic |
---|---|
1 | Introduction to Discrete Mathematics |
2 | Logic and Propositional Calculus |
3 | Sets and Set Operations |
4 | Combinatorics: Permutations and Combinations |
5 | Combinatorics: Binomial Coefficients and the Pigeonhole Principle |
6 | Introduction to Graph Theory |
7 | Trees and Tree Algorithms |
8 | Graph Algorithms: Shortest Paths and Minimum Spanning Trees |
9 | Graph Algorithms: Network Flows and Matching Problems |
10 | Discrete Probability |
11 | Advanced Topics in Discrete Mathematics |
12 | Course Review |