Calendar Description: Introduction to design, analysis, and implementation of algorithms. Recursion, backtracking, and exits. Sequences. Elementary searching and sorting. Order-of-magnitude complexity. Documentation, iterative program development, translating natural language to code, testing and debugging.
Recommended: Some programming experience (such as high-school level programming or CISC 101/3.0 or CISC 110/3.0
or CISC 151/3.0)
Prerequisite: None.
Corequisite: (CISC 102 or MATH 110 or MATH 111 or MATH 112 or MATH 120 or MATH 121 or MATH 123 or MATH 124
or MATH 126 or APSC 171 or APSC 172 or APSC 174 or COMM 161 or COMM 162).
Text: Intro to Python® for Computer Science and Data Science by Dietel and Dietel

The text is available online through the Queen's Library.
Class Schedule:
Monday 1130 - 1220
Tuesday 1330 - 1420
Thursday 1230 - 1320
All class meetings will be held in Stirling A
Marking Scheme:
Assignments: Eight assignments, to be completely independently.
The lowest assignment grade will be dropped, the other seven will be weighted at 5% each.
(Total 35%)
Tests: Midterm exam: 25%.
Final exam: 40%.
Note: If your final exam grade is < 60%, your final grade in the course will not include your assignment grades.
Late Policy for Assignments: Late assignments will be accepted up to 24 hours past the deadline with a penalty of 10%. Assignments will not be accepted more than 24 hours after the deadline.