COEN 243 Programming Methodology I
Department of Electrical and Computer Engineering
Concordia University
Fall 2014

Instructor: Hassan Rivaz
Office: EV005.154
Office Hours: Thuesdays 3:00 to 5:00
POD: EV 5.221, Monday 5PM to 7PM and Wednesday 6PM to 8PM
TA: Ehsan Saboori
Email: e_saboo AT ece (DOT) concordia (DOT) ca
Kobra (Ava) Khanmohammadi
Email: k (DOT) khanmohammadi (AT) gmail (DOT) com
Lectures: SGW H-820, Wednesdays and Fridays 4:15 to 5:30PM
Tutorial: SGW H-929 and H-905, Tuesdays 11:45 to 13:25
Text Book: Deitel and Deitel, C++ How to Program, 9th edition, ISBN 978-0133378719
Reference Book: Any C++ or object oriented programming book
Assignments: Four programming assignments in C++
Midterm 1: Date Friday October 3, Place: H820 (in class), No make-up tests offered.
Midterm 2: Date Friday October 24, Place: H820 (in class), No make-up tests offered.
Grading: Four Programming Assignments (40pts). You have to get at least 20pts to pass the course.
Midterm 1 (10 pts).
Midterm 2 (10 pts).
Finals (40 pts).


Topic Chapter


Wed Sept 3 - Course Outline

Friday Sept 5 - Introduction to Computers

Chapter 1


Wed Sept 10 - Overview of C++

Chapter 2

Friday Sept 12 - Control Statements 'if' and 'switch'

Chapter 4


Wed Sept 17 - Control Statements 'if' and 'switch' (Cont)

Chapter 4

Friday Sept 19 - Repetition with 'while', 'for' and 'do-while'

Chapter 5


Wed Sept 24 - Repetition with 'while', 'for' and 'do-while' (Cont)

Chapter 5

Friday Sept 26 - Practice


Wed Oct 1 - Review and Practice

Chapters 1,2,4,5

Friday Oct 3 - Midterm 1

Ch 1,2,4,5 & notes


Wed Oct 8 - Functions and an Introduction to Recursion - Part 1

Chapter 6

Friday Oct 10 - Functions and an Introduction to Recursion - Part 2

Chapter 6


Wed Oct 15 - Introduction to Arrays

Chapter 7

Friday Oct 17 - Arrays

Chapter 7


Wed Oct 22 - Review for the exam


Friday Oct 24 - Midterm exam 2

Ch 1 to 7, not Ch 3, & notes


Wed Oct 29 - n-dimensional vectors

Chapter 7 and notes

Friday Oct 31 - Introduction to Classes and Objects

Chapter 3


Wed Nov 5 - User-Defined Classes - Part 1

Chapter 3 & notes

Friday Nov 7 - User-Defined Classes - Part 1 (Cont)

Chapter 3 & notes


Wed Nov 12 - Practice


Friday Nov 14 - User-Defined Classes - Part 2

Chapter 3 and notes


Wed Nov 19 - Pointers and references - Part 1

Chapter 8

Friday Nov 21 - Pointers and references - Part 2

Chapter 8


Wed Nov 26 - Practice


Friday Nov 28 - Review for the Final Exam


Graduate Attribute:
This course emphasizes and develops the CEAB (Canadian Engineering Accreditation Board) graduate attribute of problem analysis. The attribute is defined by CEAB as follows:

Problem analysis: An ability to use appropriate knowledge and skills to identify, formulate, analyze, and solve complex engineering problems in order to reach substantiated conclusions.

Problem analysis is an important skill that all engineers should acquire. It consists of the process of understanding and analyzing a problem following a well-defined approach in order to reach the best possible solutions. In the first part of the course, we will cover problem analysis techniques in the lectures. In this course, students will develop skills to identify, formulate, analyze, and solve complex problems.
Late Submissions:
Absolutely NO extension on assignments will be granted and NO late submissions will be accepted, except in the event of a valid medical emergency. In the case of a medical emergency, it is YOUR responsibility to contact your Teaching Assistant Ehsan Saboori PRIOR to the submission deadline. Then, as soon as possible submit proper official medical documentation to Dr. Rivaz. The medical documentation must CLEARLY state that you were incapacitated for an extended period of time prior to the submission deadline and were unable to complete the assignment. The instructor will review your documentation, may even call the doctor to verify the information, and will then make a decision whether your medical note was accepted or not. Merely submitting a medical note is no guarantee that a late submission will be accepted.

Academic Integrity:
Violation of the Academic Code of Conduct in any form will be severely dealt with. This includes copying (even with modifications) of program segments. You must demonstrate independent thought through your submitted work.

See more details here: