McMaster University
SFWR ENG 2S03, Term II 2017-2018
Programming
Instructor
Dr. M. v. Mohrenschildt, ITB 167 ex: 23844,
Office hours: To be determined or by appointment (please e-mail for appointment).
Lectures, Tutorials
Lectures: Mo,We,Th 4:30PM - 5:20PM PC 155
Tutorials:
- Tu 5:30PM - 6:20PM BSB 104
- Fr 11:30AM - 12:20PM
Midterm
Wednesday, February 14, 2018, Wednesday, February 14, 2018 (class time), UH 213
The list of topics
Sample midterm (this was later in the term). here
Teaching Assistants
Course Information on Web
The study material and the latest information about the course is here:
HERE
(you need a password that you are given in class).
This document is located at:
http://www.cas.mcmaster.ca/~mohrens/2s03/outline.html.
(Or go to my home page and then to SFWR ENG 2s03)
Grades, Mid-term, Assignments, and Exams
Assignments
There will be 5 assignments. Assignment 0 is installing the gcc compiler, no credit
for this.
Major Topics
The following outline is approximate.
- The concept of programming
- Intro to C
- C types
- C control structures
- Sequential structures, static dynamic, file IO. (List, stack, queue).
- Sorting and Searching 1
- Tree structures
- Sorting and Searching 2
- Logic of decition making , booleans, propositions, predicates
- Finite State machines
- C++ concepts
Learning Objectives
Learning objectives are measured and reported to the CEAB as part of the accreditation process.
- Students should know and understand
- C programming concepts
- Stacks, Lists, Trees (basic data structures)
- Dynamic and Dynamic Memory
- Booleans, propositions, predicates
- Finite State machines as a model of computation
- Sorting and searching
- Principles of professional programming
- Students should be able to
- Write proper C programs
- Implement the the basic structures (stack, tree, list,tree) static and dynamic
- File IO
- Debugging and testing
- Finite state machines as a programming patter
Note
Class participation, changes
This is not an online course. The web resources do not make up for not coming to the
lectures. It is the concept of accredited CEAB education that you spend time
in front of a professional engineer teaching you material.
I will not take attendance, it is your responsibility to attend all classes.
The instructor and university reserve the right to modify elements of the course during the term.
The university may change the dates and deadlines for any or all courses in extreme circumstances.
If either type of modification becomes necessary, reasonable notice and communication with the
students will be given with explanation and the opportunity to comment on changes. It is the responds
ability of the student to check their McMaster email and course websites weekly during the term and
to note any changes.
Discrimination
"The Faculty of Engineering is concerned with ensuring an
environment that is free of all adverse discrimination. If there is
a problem that cannot be resolved by discussion among the persons
concerned individuals are reminded that they should contact there
Chair, the Sexual Harassment Office or the Human Rights Consultant,
as soon as possible."
Academic Dishonesty
You are expected to exhibit honesty and use ethical behaviour in all aspects of the learning process.
Academic credentials you earn are rooted in principles of honesty and academic integrity.
Academic dishonesty is to knowingly act or fail to act in a way that results or could result in unearned
academic credit or advantage. This behaviour can result in serious consequences, e.g. the grade of
zero on an assignment, loss of credit with a notation on the transcript
(notation reads: "Grade of F assigned for academic dishonesty?") and/or suspension or expulsion
from the university.
It is your responsibility to understand what constitutes academic dishonesty. For information on the
various types of academic dishonesty please refer to the Academic Integrity Policy,
located at
http://www.mcmaster.ca/academicintegrity .
The following illustrates only three forms of academic dishonesty:
- Plagiarism, e.g. the submission of work that is not one's own or for which other
credit has been obtained.
- Improper collaboration in group work.
- Copying or using unauthorized aids in tests and examinations.
Calculators
Calculators (the standard McMaster calculator) are not used in this course
and their use will not be permitted during tests and final.