Said Abdallah Muhammad
Information and Computer Science Dept.
Announcements:
Teaching
This page provides a listing of the courses I am currently teaching.
Current Course (Term 122)
ICS 102: Introduction to Programming IOffice Hours (Term 122):
S, U, T: 1:00 p.m. - 1:50 p.m. or by Appointment
Office Location: 22/148-2
Office Telephone#: 2081
e-mail: said@kfupm.edu.sa
ICS 102 Syllabus (Term 122)
ICS 102 Lab Grades (Term 122)
ICS 102 Lab Resources:
jCreatorLE4.50
jCreatorLE4.50 installation file
JDK
Java API Documentation
Notepad2
ICS 102 Lab Documents:
Lab01
Lab02
Lab03
Lab04
Lab05
Lab06
ICS 103: Programming in C
ICS 103 Lab Syllabus for Term 121
Office Hours:
T, W: 11:00 a.m. - 11:50 a.m. or by Appointment
Office Location: 22/148-2
Office Telephone#: 2081
e-mail: said@kfupm.edu.sa
Lecture Slides:
Lecture 01 Overview of Computers and Programming
Lecture 02 Overview of C Part1
Lecture 03 Overview of C Part2
Lecture 04 Arithmetic Expressions
Lecture 05 Introduction to Functions
Lecture 06 Selection Structures
Lecture 06 Supplement 01: Introduction to Selection and Looping Statements
Lecture 06 Supplement02: Selection Statements
Lecture 07 Repetition Structures
Lecture 07 Supplement: Repetition Statements
Lecture 08 Supplement - Text Data Files
Lecture09&10 Supplement- Functions
Lecture 14 Searching and Sorting
Searching and Sorting Applets (Acknowledgement to Owners of the Applets)
Laboratory Resources:
Portable C IDEs: Dev C++ PellesC
C IDEs Installation files: Dev C++ PellesC
Laboratory Documents:
Lab 01 Supplement - Installing Dev C++
Lab 02 Supplement1 - Stopping the output window in Dev C++
Lab 02 Supplement2 - Types of Programming Errors
Lab03 Supplement - How to use the Dev C++ Debugger
Lab09 1D-Arrays Part1Lab10 1D-Arrays Part2
ICS 103-04 Quiz Keys (Term 113):
ICS 103-54 Quiz Keys (Term 113):
LECTURE HOMEWORK (TERM 111)
Homework Submission Instructions
QUIZ KEYS (TERM 111):
Quiz01:
Quiz02:
Quiz03:
Quiz04:
LAB QUIZ KEYS (TERM 111):
Quiz01:
Quiz02:
Quiz03:
Quiz04:
SAMPLE LAB QUIZ KEYS (TERM 102):
Quiz02:
Quiz03:
LECTURE QUIZ KEYS (TERM 102):
Quiz01:
ICS 103-01 Quiz01 Key (Term 102)
ICS 103-02 Quiz01 Key (Term 102)
ICS 103-03 Quiz01 Key (Term 102)
Quiz02:
ICS 103-01 Quiz02 Key (Term 102)
ICS 103-02 Quiz02 Key (Term 102)
ICS 103-03 Quiz02 Key (Term 102)
Quiz03:
ICS 103-01 Quiz03 Key (Term 102)
ICS 103-02 Quiz03 Key (Term 102)
ICS 103-03 Quiz03 Key (Term 102)
Quiz04
ICS 103-01 Quiz04 Key (Term 102)
ICS 103-02 Quiz04 Key (Term 102)
ICS 103-03 Quiz04 Key (Term 102)
Quiz05:
SAMPLE PAST EXAMS:
Midterm Exam (Version01) Term 111
Midterm Exam (Version02) Term 111
Previous Homework Assignments:
Previous Quiz Solutions:
Previous Courses:
ICS 202: Data Structures
This is a course on Data Structures. It is taught using Java as the programming language. Lectures and Laboratory Assignments are listed below:
HOMEWORK ASSIGNMENTS:
Exercise on Iteration method of Solving Recurrences
QUIZ AND HOMEWORK SOLUTIONS (One solution per each quiz, the other is equivalent):
Hw01 Solution (Theoretical Part)
LECTURES:
06 Recursion ProgramsForRecursionLectures
07 Complexity Analysis of Recursive Algorithms
22 Graph Connectedness and Cycle detection
24 Dijkstra's Shortest Path Algorithm
LABORATORY ASSIGNMENTS:
Lab #01: Introduction to Design Patterns (wordFile zipFile )
Lab #02: More on Design Patterns (wordFile zipFile )
Lab #03: Linked Lists (wordFile zipFile )
Lab #04: Stacks and Queues (wordFile zipFile )
Lab #05: Recursion (wordFile zipFile )
Lab #06: Binary- and BinarySearch-Trees (wordFile zipFile )
Lab #07: Binary Heaps (wordFile zipFile )
Lab #08: Huffman Coding ( zipFile )
Lab #09: AVL Trees ( zipFile )
Lab #10: Graph Implementations ( zipFile )