CISC 101/3.0 Elements of Computing Science

Last Revised: July 2018 (David Lamb)

Introduction to algorithms: their definition, design, coding, and execution on computers. Intended for students who have no programming experience. All or most assignment work will be completed during lab time.

Note: May not be taken concurrently with or subsequently to CISC 121/3.0 or any higher-level CISC or SOFT course.

Note Sufficient preparation for CISC 121/3.0. Students without programming experience should take CISC 101/3.0 (or CISC 110/3.0 or CISC 151/3.0) before CISC 121/3.0.

Learning Hours: 120 (36L;36Lb;48P)

Exclusions: No more than 3.0 units from APSC 142/3.0; APSC 143; CISC 101/3.0; CISC 110/3.0; CISC 151/3.0

Course Outline:

Context: platforms, compilers, editors, development environments

Basics of imperative programming: basic data types, constants, variables, expressions, assignments, basic input/output (terminal and files)

Elementary control structures: selection, iteration

Elementary data structures: arrays or lists, strings

Scope, lifetime, local and global/static variables

Procedures/functions, parameters

Introduction to Computer Science: a taste of advanced applications and research issues