CMPT
130 Description
An introductory course to computing science and programming. Students will learn fundamental concepts and terminology of computing science, acquire elementary skills for programming in the C++ programming language and be exposed to diverse fields within, and applications of computing science.
Introduction to Programming and
Computer Science: hardware and software, computer organization, what computer
science is about, programming languages, programming tools
Introduction to Programming: values,
variables, types, expressions, operators, character-based input and output
Functions: function libraries,
passing parameters, returning values, the call stack
Decisions: Boolean logic, if
statements, relational operators
Repetition: while loops, for loops,
recursion
Aggregate Data Types: arrays,
strings, records
Debugging Strategies: using a
debugger, writing tests, using assertions and invariants, common bugs
File I/O and Error Handling: why
error-handling is important, reading and writing text files, recognizing
errors, signalling errors, handling errors
Fundamental Algorithms: searching,
sorting, numerical algorithms, introduction to algorithm complexity
Dynamic Memory: pointers and
addresses, allocating heap and de-allocating variables in dynamic memory
Software Design: organizing programs
into modules
John Edgar (johnwill@sfu.ca)