0% found this document useful (0 votes)
9 views

BIT 1400_CourseOutline_Fall 2023

BIT 1400A / ITEC 1400A is an introductory programming course focused on procedural programming and algorithm design in C, covering topics such as variables, functions, loops, and debugging. The course includes lectures, labs, assignments, and exams, with a grading scheme that emphasizes progressive assessments and participation. Students are expected to adhere to course policies, including attendance, assignment submissions, and health measures related to COVID-19.

Uploaded by

Naftali Segal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

BIT 1400_CourseOutline_Fall 2023

BIT 1400A / ITEC 1400A is an introductory programming course focused on procedural programming and algorithm design in C, covering topics such as variables, functions, loops, and debugging. The course includes lectures, labs, assignments, and exams, with a grading scheme that emphasizes progressive assessments and participation. Students are expected to adhere to course policies, including attendance, assignment submissions, and health measures related to COVID-19.

Uploaded by

Naftali Segal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

BIT 1400A / ITEC 1400A (0.

5 credits)
Introduction to Programming and Problem Solving
Fall 2023

Instructor: David Sprague


Office:AP-230E
Email: david.sprague@carleton.ca
Phone: (613) 520-2600 x X1324
Office Hours: Tuesdays & Wednesdays: 9:30-11:00am
Lecture: Mondays & Wednesdays: 13:05pm -14:25pm
Location: LA C164 (in-person only)
Tutorial/Lab: Lab A1 Mondays 14:35 - 17:25
Lab A2 Wednesdays 14:35 – 17:25
Lab Location: AP 134
TA: TBD

Course Description:

Introduction to basic concepts of procedural programming and algorithm design in C. Topics include: basic
variables, functions, operators, program control with iteration and conditionals, I/O operations, text and file
processing, structures, arrays, pointers, debugging, algorithmic thinking and pseudocode, computer
architecture, operating systems, and libraries.
Prerequisites: None

Course Objectives/Learning Outcomes:

1. By the end of the first module, students should be able to implement functions, loops, conditionals and
variable declarations in C.
2. By the end of the course, students should be able to demonstrate algorithmic thinking by breaking down
complex problems into small unambiguous steps.
3. By the end of the term students should be able to implement applicable solutions to multi-step
introductory programming problems and requirements.
4. By the end of term, students should be able to assess code correctness. This will include proposing
solutions, enumerating cases, and identifying logical and syntactic mistakes. Weekly assignments will
require students to assess their own code to make it work. Exams can ask students to find errors in
provided code.
5. By the end of the course, students should be able to evaluate code quality including identifying code
efficiency, readability, modularity, and clarity

Textbook/Equipment/Material:

• Starting Out with C++: From Control Structures through Objects, Tony Gaddis, 2017
o Basic reference for C/C++ programming
o The textbook is recommended but not required.
• Lecture notes and provided online reading materials (Brightspace)
• Online Resources
o This course uses Brightspace (https://brightspace.carleton.ca) extensively for assignment
submissions, lecture notes (provided in advance but you should add to them), and grade postings.
o We will use the Brightspace Forums for questions, comments, and class logistic messages but office
hours and questions at the start of the class are recommended.
o Recorded lectures from previous terms will also be shared via a provided YouTube playlist. This is
not the equivalent of attending class. These are provided in case you miss a class and for review.
• Other Online Resources
o http://www.cprogramming.com
o http://www.learn-c.org
o https://www.onlinegdb.com/online_c_compiler

Grading Scheme:

Deliverable Due Date %


In-class class quizzes ------------- 5
Assignment (top 10 of 11) 30
A1 Scratch Programming 9/20/2023 3
A2 Algorithmic thinking 9/27/2023 3
A3 Intro to C 10/04/2023 3
A4 Program Control 10/11/2023 3
A5 Misc. Functions 10/18/2023 3
A6 Loops and Arrays 11/01/2023 3
A7 Structs 11/08/2023 3
A8 Char-strings and pointers 11/15/2023 3
A9 Exam Practice 11/22/2023 3
A10 Dynamic arrays and pointers 11/29/2023 3
A11 Peer Code review & More Pointers 12/06/2023 3
Lab Submissions (top 10 of 12 labs) ----------- 10
Exam 1 9/27/2023 5
Exam 2 11/22/2023 20
Final Exam TBA 30
Total 100
Assignment submissions due dates may need to change based on your schedules. I am aiming for Wednesday night due
dates.

Assessments:
Course assessments are progressive.
1. Formative quizzes and in-class exercises prepare you for the labs
2. Labs directly prepare you for assignments.
3. Assignments directly prepare you for the exams.
4. Exams demonstrate that you understand the material.

Course Policies:
Schedule: Students are responsible for staying on schedule for the quizzes, labs, and assignments.
In-class Quizzes / Exercises: Students will take regular quizzes during class time to help cement new knowledge,
promote reflection and to motivate them to focus on the lecture.
• Quizzes also measure student progress helping us understand why some students struggle in the course.
• Most in-class exercises will be participation grades not graded right/wrong. Poll Everywhere quizzes will
be graded 50% for the attempt and 50% for correctness.
• A subset of total quiz questions (approximately 3-4) will be dropped to handle stress weeks, absence
due to illness, and other life events.

Assignments: Weekly assignments are designed to help you keep up with the course.
• Assignments are released on Wednesdays (can be adjusted based on your schedules) and will be due one
week later. Reflections are due at the same time. We won’t grade your assignment until we have your
reflections.
• Assignments are given every week and are done individually
• Each student can be late by one day twice per term without penalty.
• Assignments can only be submitted via Brightspace and late assignments will be given a 0 once the last
submission days have been used. This is a strict policy. You can submit multiple times so submit early and
submit often to avoid this issue.
• We drop one assignment grade for life events and stress. This also makes the 0 late policy less mean.
• There are no extensions or do-overs. The dropped assignments provide this functionality.
• Assignments are meant to be low risk assessments. They aren’t supposed to consume all your free time or
induce panic. If you miss an assignment, it won’t greatly affect your mark. If you miss several, it will.
• Assignment reflections are meant to be short light-weight assessments of your experience. This improves
future assignments, helps cement lessons learned, and hopefully makes you aware of any struggles you are
having. You will not be graded on the quality of the reflection (beyond a reasonable attempt) but these are
required for us to grade your assignment.
• Code that can’t be run will be severely penalized. We can’t effectively test your code otherwise and it is not
the TA’s job to track down why your code is broken. It IS our job to help you in labs and office hours but
that requires you working well before the deadline.
• You are expected to start assignments early if you want to ensure help is available.

Exams: All exams are taken on paper and are timed.


• Each student should prepare a double-sided letter-sized “cheat sheet” for the exam and include whatever
they want on the sheet.
• Memorization questions won’t be found on the exam. We are evaluating the learning objectives above with
a special emphasis on algorithmic thinking and problem solving.
• You have 30 minutes for exam 1, 80 minutes for exam 2, and 3 hours to write the final.
• The final exam will be scheduled for the end of term exam period.
• PMC students (discussed below) need to reach out to me to ensure they have the support they need.
• You must pass the final exam to pass the course. Grades < 50% will be judged on a case-by-case basis
o This means cheating on assignments makes no sense.

Lab Participation: Labs are mandatory and each week you will practice programming using topics from the
lecture.
• “Attendance” is taken by submitting your work to Brightspace.
• You are encouraged to work together but not copy from others. Collaboration helps you learn so just
state who you worked with in a comment.
• Labs can be done from home or (health policy permitting) in the assigned lab room. The TA will only
help the in-person lab during the scheduled time so you are strongly encouraged to attend.
• A subset of submissions will be graded on a 3 star scale each week (or some equivalent)
o 0 stars = unacceptable work,
o 1 star or no evaluation = not tested
o 2 stars=Acceptable but can be improved
o 3 stars = Excellent
o A mark of 1 or more stars means you will get full points for the lab that week.
o If a lab submission receives 0 stars (such as submitting a blank file or 2 lines of code), we will
audit all labs from that student to see if this is a pattern (like a tax audit).
o You can expect your labs will be reviewed at least once (probably more) per term.
• Each student can miss 2 labs (for life events). There is no need to contact us about missed submissions.
• Successfully completing all lab work in a lab is not required. This is meant to be a low-risk environment
to prepare for the weekly assignment. You should accomplish as much as you can in the full lab time. If
you submit your work after 2 hours, you should get credit for that lab.

Other Policies
• We programmatically check for cheating in assignments and exams. See the academic integrity policy below.
• The Brightspace message board is used for questions, comments and class logistic messages. I won’t answer
private emails about non-private things (or I’ll try not to).
o This lets you ask a question, get answers faster and ensure everyone gets the same information
ensuring fairness.
o If it only affects you: email away.
o I also like in-person questions at the start of class just so everyone gets the same answer.
• Office hours are for you; please take advantage of them.
• My phone is effectively ornamental. Email, discord, and Brightspace are the effective ways to reach me.
Office hours and class questions are even more effective.

Course Schedule/List of Topics by Week:

Week Week Start Date Topics / Teaching Activities Assignments / Deliverables


1 09/06/2023 Introduction to
programming
2 09/11/2023 Algorithmic Thinking T1: Visual Programming
09/13/2023 The basic computer A0: Syllabus Quiz
3 09/18/2023 Into to C T2: Pseudocode / Algorithmic Thinking and
09/20/2023 Intro to C 2 setting up Visual Studio
A1: Scratch Game
4 09/25/2023 Variables & arithmetic T3: Variables, breakpoints and printf
09/27/2023 Exam 1 A2: Exam practice + algorithmic thinking
5 10/02/2023 Conditionals T4: Conditionals
10/04/2023 Functions A3: Intro to C
6 10/09/2023 <no class> T5: Functions
10/11/2023 Looping A4: Conditionals
7 10/16/2023 Static Arrays & For loops T6: Loops
10/18/2023 For loops 2 A5: Functions
7 10/23/2023 Winter break -------------------
10/25/2023
9 10/30/2023 Structs T7: Loops and arrays
11/01/2023 Pointers 1 A6: Loop & arrays
10 11/06/2023 C-strings T8: Structs
11/08/2023 C-strings 2 A7: Struct functions
11 11/13/2023 Arrays & memory T9: Characters and Strings
11/15/2023 Review/catch-up class A8: Character strings + pointers
12 11/20/2023 Pointers 2 T10: Sizeof, arrays and memory
11/22/2023 Exam 2 A9: Exam Practice
13 11/27/2023 Pointer 3 T11: Pointers, call by reference, arrays,
11/29/2023 Linkers & Preprocessor linking and breakpoints
A10: Arrays of structs with arrays
14 12/04/2023 Linkers and Preprocessors 2 T12: Code reviews + pointer practice
12/06/2023 Testing + Code Quality A11: Peer code review
12/08/2023 Exam Review
Exams --------- ---------- Final Exam (date TBD)

While every attempt will be made to keep to the schedule listed above, circumstances may necessitate
modifications throughout the semester.

PANDEMIC MEASURES

It is important to remember that COVID is still present in Ottawa. The situation can change at any time and the
risks of new variants and outbreaks are very real. There are a number of actions you can take to lower your risk
and the risk you pose to those around you including being vaccinated, wearing a mask, staying home when
you’re sick, washing your hands and maintaining proper respiratory and cough etiquette.
Feeling sick? Remaining vigilant and not attending work or school when sick or with symptoms is critically
important. If you feel ill or exhibit COVID-19 symptoms do not come to class or campus. If you feel ill or exhibit
symptoms while on campus or in class, please leave campus immediately. In all situations, you should follow
Carleton’s symptom reporting protocols.
Masks: Masks are no longer mandatory in university buildings and facilities. However, we continue to
recommend masking when indoors, particularly if physical distancing cannot be maintained. We are aware that
personal preferences regarding optional mask use will vary greatly, and we ask that we all show consideration
and care for each other during this transition.
Vaccines: While proof of vaccination is no longer required to access campus or participate in in-person Carleton
activities, it may become necessary for the University to bring back proof of vaccination requirements on short
notice if the situation and public health advice changes. Students are strongly encouraged to get a full course of
vaccination, including booster doses as soon as they are eligible and submit their booster dose information
in cuScreen as soon as possible. Please note that Carleton cannot guarantee that it will be able to offer virtual or
hybrid learning options for those who are unable to attend the campus.

All members of the Carleton community are required to follow requirements and guidelines regarding health
and safety which may change from time to time. For the most recent information about Carleton’s COVID-19
response and health and safety requirements please see the University’s COVID-19 website and review
the Frequently Asked Questions (FAQs). Should you have additional questions after reviewing, please
contact covidinfo@carleton.ca.

ACADEMIC ACCOMMODATION

You may need special arrangements to meet your academic obligations during the term. For an accommodation
request, the processes are as follows:

Pregnancy obligation:

Please contact your instructor with any requests for academic accommodation during the first two weeks of
class, or as soon as possible after the need for accommodation is known to exist. For more details, visit the
Equity Services website carleton.ca/equity/wp-content/uploads/Student-Guide-to-Academic-
Accommodation.pdf.

Religious obligation:

Please contact your instructor with any requests for academic accommodation during the first two weeks of
class, or as soon as possible after the need for accommodation is known to exist. For more details, visit the
Equity Services website carleton.ca/equity/wp-content/uploads/Student-Guide-to-Academic-
Accommodation.pdf

Academic Accommodations for Students with Disabilities:

The Paul Menton Centre for Students with Disabilities (PMC) provides services to students with Learning
Disabilities (LD), psychiatric/mental health disabilities, Attention Deficit Hyperactivity Disorder (ADHD), Autism
Spectrum Disorders (ASD), chronic medical conditions, and impairments in mobility, hearing, and vision. If you
have a disability requiring academic accommodations in this course, please contact PMC at 613-520-6608 or
pmc@carleton.ca for a formal evaluation. If you are already registered with the PMC, contact your PMC
coordinator to send me your Letter of Accommodation at the beginning of the term, and no later than two
weeks before the first in-class scheduled test or exam requiring accommodation (if applicable). Requests made
within two weeks will be reviewed on a case-by-case basis. After requesting accommodation from PMC, meet
with me to ensure accommodation arrangements are made. Please consult the PMC website
(www.carleton.ca/pmc) for the deadline to request accommodations for the formally-scheduled exam (if
applicable).

Survivors of Sexual Violence:

As a community, Carleton University is committed to maintaining a positive learning, working and living
environment where sexual violence will not be tolerated, and where survivors are supported through academic
accommodations as per Carleton's Sexual Violence Policy. For more information about the services available at
the university and to obtain information about sexual violence and/or support, visit https://carleton.ca/sexual-
violence-support/

Accommodation for Student Activities:

Carleton University recognizes the substantial benefits, both to the individual student and for the university,
that result from a student participating in activities beyond the classroom experience. Reasonable
accommodation must be provided to students who compete or perform at the national or international level.
Please contact your instructor with any requests for academic accommodation during the first two weeks of
class, or as soon as possible after the need for accommodation is known to exist. For more details, visit
https://carleton.ca/senate/wp-content/uploads/Accommodation-for-Student-Activities-1.pdf

ACADEMIC INTEGRITY

The University Senate defines plagiarism in the regulations on instructional offenses as “to use and pass off as
one's own idea or product work of another without expressly giving credit to another."
Borrowing someone else's answers, unauthorized possession of tests or answers to tests, or possession of
material designed in answering exam questions, are also subject to university policy regarding instructional
offences. Students who post their code online are making themselves a potential party to plagiarism and are
subject to the consequences. For more information on Carleton University's Academic Integrity Policy, consult
https://carleton.ca/secretariat/wp-content/uploads/Academic-Integrity-Policy-2021.pdf.

COURSE COPYRIGHT

Student or professor materials created for this course (including presentations and posted notes, labs, case
studies, assignments, and exams) remain the intellectual property of the author(s). They are intended for
personal use and may not be reproduced or redistributed without prior written consent of the author(s).

IMPORTANT DATES TO REMEMBER – Academic Year 2023-2024

WITHDRAWALS
The last day to withdraw from full fall term courses with a full fee adjustment is September 30, 2023.
Withdrawals after this date will create no financial change to fall term fees and will result in a permanent
notation of WDN appearing on your official transcript.

The last day to withdraw from full fall term courses without academic penalty is November 15, 2023.

OFFICIAL FINAL EXAMINATION PERIOD


Fall term: December 10-22, 2023 – Examinations are normally held all seven days of the week.

For a complete listing of academic and financial dates and deadlines for the 2023/2024 academic year, please
visit https://carleton.ca/registrar/registration/dates/academic-dates/.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy