CPSC 100 Introduction to Computer Programming I is an introductory object-oriented (OO) programming course with emphasis on basic programming constructs, algorithms, program design, and good programming practices. This course will introduce a high-level language to illustrate programming basics. Students will develop and test small OO programs which loop, make decisions, access arrays, define classes, instantiate objects, and invoke methods.
Prerequisites: Foundations of Math 12 or Pre-calculus 12 or MATH 60 with a minimum grade of 60%
Accessibility Services Notice
Students who would like an academic accommodation and who have a documented disability should contact Accessibility Services, if they have not already done so.Course Details| Total number of weeks | 15 |
|---|
| Total Credits | |
|---|
| Total Hours | 75 |
|---|
Typical hours per week breakdown| Lecture | 3 |
|---|
| Lab (lab, field, computer) | 2 |
|---|
Learning Outcomes
Upon successful completion of this course, the learner will be able to:
- Design a sound program to solve a specified problem
- Write a program in python that is readable and easy to maintain
- Understand Computer Science fundamentals
- Learn the full cycle of programming, from design to execution to testing and debugging
- Analyze and explain the behavior of simple programs involving the fundamental programming constructs variables, expressions, assignments, I/O, control constructs, functions, parameter passing, and recursion
Teaching and Learning Approach
The course will include a mix of theory, discussion, demonstration, guided application, and independent study.Learning Resources
One of
C Programming Absolute Beginner's Guide, 3nd Edition. Greg Perry, Dean Miller (Recommended)
Programming in C, 4th Edition, Stephen G. Kochan
Programming in ANSI C, 3nd Edition. By Ray Dawson
Free download at https://dspace.lboro.ac.uk/2134/10054Detailed Course Content, Topics, and Sequence Covered
1. Course Administration, Intro to Programming
2. Intro to Programming, Data types, Comments
3. Simple Output, Variables
4. Strings, Simple Input, Pre-compiler
5. Conditionals, and Logic
6. Math, Expressions
7. While, For, Break
8. More I/O and Math
9. Midterm (no lab)
10. Arrays!
11. Pointers and Arrays
12. Functions
13. Storage & File I/O
14. Memory and Structures
15. General Review for Final ExamAssessment
| Title | Learning Outcomes | Value |
|---|
| Labs | 1-5 | 20% |
| Assignments | 1-5 | 30% |
| Midterm | 1-5 | 20% |
| Final Exam | 1-5 | 30% |
| Total | 100% |
Grading Table
Standard Academic and Career Programs Grading Table
| Percentage |
Letter Grade |
GPA |
| 90-100 |
A+ |
4.33 |
| 85-89 |
A |
4.00 |
| 80-84 |
A- |
3.67 |
| 76-79 |
B+ |
3.33 |
| 72-75 |
B |
3.00 |
| 68-71 |
B- |
2.67 |
| 64-67 |
C+ |
2.33 |
| 60-63 |
C |
2.00 |
| 55-59 |
C- |
1.67 |
| 50-54 |
P |
1.00 |
| 0-49 |
F |
0.00 |
| |
DNW |
0.00 |
See the Academic Calendar for General Information including how to withdraw from course(s) and other regulations.
Disclaimer
Information contained in this course outline is correct at the time of publication. Content of the course is revised on an ongoing basis to ensure relevance to changing educational, employment and market needs. The instructor will endeavor to provide notice of changes to students as soon as possible. The instructor reserves the right to add or delete material from courses.