|
CS 122
Introduction to Programming and Problem Solving
|
|
Course Description
CS 122 is an introduction to computational problem solving and programming in a modern, high level language.
The class introduces topics in computational thinking, including techniques for program design, implementation,
and testing.
Lectures and Labs
Two 80-minute lectures and a 1-hour lab each week.
Prerequisites
- Math 101 or equivalent required.
Textbooks and Readings
-
(Required)
Think Python: How to Think Like a Computer Scientist, 2nd
edition, by Allen B. Downey (O'Reilly Media: 2015)
Major Topics
- Structured approach to computational problem solving
- Fundamental programming topics
- Basic data structures programming topics
- Understanding, designing, reading, writing, testing, debugging, and editing Python programs
Expected Learning Outcomes
Upon successful completion of the course, students will be able to:
- solve problems from a variety of areas by designing, implementing, testing, and
debugging algorithmic solutions in a high level programming language
- design, write, and test programs using test-driven design or other strategies
- write programs that adhere to course programming style guidelines
- describe the effects of executing basic program statements
- write programs that use variables and expressions
- write programs that use basic numeric, text, and Boolean data types
- write programs that use conditional and iterative control structures
- write programs that can use basic input and output, including file input and output
- write programs that use modules from language standard library
- write programs that include user-defined functions including functions that call other functions
- describe how parameters are passed to functions; describe how functions return values
- write programs that use collections data types