Eman Samy Diyab

Lecturer
CS Department, Purdue University

MSc, Purdue University, Computer Science (2021)
BS, Ain Shams University, Computer Science

Previous Semesters

Fall 2025 - CS15900

Lecture # Date Lecture Quiz Notes Recording Pages Lab HW Keywords
WEEK 1
1
Aug 26
---
Pdf
Video
Lab #0
---
Introduction, course policies and motivations
Watch Chapter #1 Recordings
  • Chapter #1 - Part 1
  • Chapter #1 - Part 2
  • Chapter #1 - Part 3
  • 2
    Aug 28
    Demo
    Pdf
    Video
    31 - 36
    Chapter #2: Structure of a C program, Commenting, Identifiers, Data types.
    WEEK 2
    3
    Sept 2
    1
    Pdf
    Video
    36 - 39
    Lab #1
    HW #1
    Chapter #2 cont.: Data types, Variables, Literal Constants, Symbolic/Defined Constants, Formatted I/O
    4
    Sept 4
    2
    Pdf
    Video
    39 - 43
    Chapter #2 cont.: Formatted I/O, Width and precision modifiers, Errors and debugging with examples
    WEEK 3
    5
    Sept 9
    3
    Pdf
    Video
    43 - 49
    Lab #2
    HW #2
    Chapter #3: Expressions(Operators and operands). Operator precedence. Assignment expressions. Simple & Compound assignments. Prefix and postfix (Undefined vs. Well-defined behavior example).
    Single and mixed data type expressions. implicit, explicit (type casting)
    6
    Sept 11
    4
    Pdf
    Video
    48 - 51
    Chapter #3 cont.: Single and mixed data type expressions. implicit, explicit (type casting), and assignment data type conversions. Rounding, truncation using floor(), type casting to int, truncation in printing using precision modifiers. A brief overview of Selection via calculation.
    WEEK 4
    7
    Sept 16
    5
    Pdf
    Video
    51 - 55
    Lab #3
    Chapter #3 cont.: Selection via calculation explained with 2 examples.
    Chapter#4: Purpose of functions. Motivation - why? Factor – smaller is easier. Reuse - by you or others. Remove redundancy. Protect data – using the variable doesn't change its value.
    8
    Sept 18
    6
    Pdf
    Video
    55 - 58
    Chapter #4: cont.
    Types of functions:
    1- No parameters - no return value: ex. welcome() , menu_options().
    2- No parameters - with return value: ex. get_input().
    WEEK 5
    9
    Sept 23
    7
    Pdf
    Video
    59 - 65
    Lab #4
    HW #3
    Chapter#4 cont. Types of functions.
    3- With parameters - with return value - Many math.h fx, sin().
    4- With parameters - no return value - printf(), display_results().
    What is permitted in main() Function - only local variable definitions, function calls and limited selection or repetition (to call functions).
    Parameter passing: 1- Pass by value.
    10
    Sept 25
    8
    Pdf
    Video
    65 - 68
    Chapter #4 cont. Parameter passing:
    1- Pass by value.
    2- Pass by address. Pointer operations.
    WEEK 6
    11
    Sept 30
    9
    Pdf
    Video
    68 - 74
    Lab #5
    Chapter #4 cont. Scope. Structure Charts. How to read a structure chart.
    Problem-solving method (specify, analyze, design, code, test and debug, refine).
    Chapter #5: Selection. Logical data. logical operators (NOT, AND, OR). Logical operators truth table.
    Logical expressions evaluation. Short circuit method with example.
    12
    Oct 2
    10
    Pdf
    Video
    75 - 78
    Chapter#5 cont. : Relational operators (<, <=, >, >=). equality operators (==, !=). Compound statements.
    Examples illustrating compound statements with short circuit method.
    Complements:
    (1) Relational and equality operators.
    (2) Logical operators. examples on Complements.
    WEEK 7
    13
    Oct 7
    11
    Pdf
    Video
    78 - 84
    Lab #6
    HW #4
    Chapter #5 cont.: Two way selection:
    (1) if-else with examples. Nested selection (if/if else). Dangling else.
    (2) Conditional expressions.
    Midterm Exam #1 - Date: Tuesday, October 7 *** Time: 8:00pm - 9:00pm *** Location: ELLT 116
    14
    Oct 9
    12
    Pdf
    Video
    84 - 91
    Chapter #5 cont.:
    Two way selection:
    (2) Conditional expressions.
    Multiway selection:
    (1) if / else if / else with examples compared to if if structure.
    (2) switch construct.
  • Fall through behavior.
  • testing floating points for equality challenges.
  • Switch construct rules.
  • When to use a switch and when not to use a switch.
  • if else vs. conditional expressions AND if else if vs. switch statements.
  • WEEK 8
    ---
    Oct 14
      🍁 FALL / OCTOBER BREAK 🍁
    15
    Oct 16
    13
    Pdf
    Video
    Chapter #6: Repetition using loops. looping basics and terminology.
    Repetition Flow chart example (calc avg, min and max of exam scores).
    Pretest and post-test loops. How to choose the right construct. Factorial example.
    WEEK 9
    16
    Oct 21
    14
    Pdf
    Video
    Lab #7
    HW #5
    Chapter #6
    17
    Oct 23
    15
    Pdf
    Video
    Chapter #6
    WEEK 10
    18
    Oct 28
    16
    Pdf
    Video
    Lab #8
    Chapter #6
    19
    Oct 30
    17
    Pdf
    Video
    Chapter #6
    WEEK 11
    20
    Nov 4
    18
    Pdf
    Video
    Lab #9
    HW #6
    Chapter #6 -> 8
    21
    Nov 6
    19
    Pdf
    Video
    Chapter #8
    WEEK 12
    Midterm Exam #2 - Date: Monday, November 10 *** Time: 8:00pm - 9:30pm *** Location: ELLT 116
    22
    Nov 11
    20
    Pdf
    Video
    Lab #10
    Chapter #8
    23
    Nov 13
    21
    Pdf
    Video
    Chapter #8
    WEEK 13
    24
    Nov 18
    22
    Pdf
    Video
    Lab #11
    HW #7
    Chapters #9 & #10
    25
    Nov 20
    23
    Pdf
    Video
    Chapters #9 & #10
    WEEK 14
    26
    Nov 25
    23
    Pdf
    Video
    Lecture will be recorded and NOT an in-person meeting
    ---
    Nov 27
      🦃 THANKSGIVING 🦃
    WEEK 15
    27
    Dec 2
    24
    Pdf
    Video
    Lab #12
    Chapter #8
    28
    Dec 4
    25
    Pdf
    Video
    Chapter #8
    WEEK 16
    ---
    Dec 9
      NO LECTURE - Lecture is canceled to compensate for evening midterm exam 1
    ---
    Dec 11
      NO LECTURE - Lecture is canceled to compensate for evening midterm exam 2
    Final Exam - Date: Wednesday, December 17 *** Time: 7:00pm - 9:00pm *** Location: ELLT 116

    I never lose.. Either I win or learn 😉
    Nelson Mandela

    Powered by DaysPedia.com
    Current Time in West Lafayette
    103255am
    Tue, November 15
    7:33am 09:57 5:30pm