CPE 101: Fundamentals of Computer Science I
Winter 2012

Instructor: Alexander Dekhtyar, dekhtyar@calpoly.edu, 14-215

Section Days Lecture Lab
CPE 101 01 MWF 9:10am - 10:00pm 186-C202 10:10pm - 11:00pm 14 - 302

Office Hours:
When
Who Where
Monday 11:10am - 12:00pm Alex 14-215
Tuesday 9:10pm - 11:00am Alex 14-215
Wednesday 11:10am - 12:00pm Alex 14-215
Friday 11:10am - 12:00pm Alex 14-215

Additional appoinments: send email.


News and Notes

Old News and Notes

Course Materials

Syllabus Postscript PDF
Noncollaboration Agreement Postscript PDF
C Program Style (courtesy of Dr. Clint Staley) HTML
Examples used in lectures HTML
Examples from years past HTML
PPM Image Gallery HTML
CENG Academic Progress Policy HTML

Reading Assignments

Due Assignment Topic Assigned on
January 4 (Wednesday) Textbook, Chapter 1 (pages 2-30) Computers: Hardware and software [December 30, 2011]
January 6 (Friday) Textbook, Chapter 2 (pages 33-86) C: Basic concepts [December 30, 2011]
January 9 (Monday) Textbook, Chapter 3
Functions [December 30, 2011]
January 18 (Wednesday) Textbook, Chapter 4, (4.1 - 4.4, 4.6 - 4.9) Conditional statements [December 30, 2011]
January 27 (Friday) Textbook, Chapter 5
Loops [December 30, 2011]
January 30 (Monday) Textbook, Chapter 8
Arrays [December 30, 2011]
February 8 (Wednesday) Textbook, Chapter 9
Strings [December 30, 2011]
February 15 (Wednesday) Textbook, Chapter 6
Functions/Problem Decomposition [December 30, 2011]
February 27 (Monday) Textbook, Chapter 11 (11.1 - 11.4)
Structures [December 30, 2011]
March 5 (Monday) Textbook, Chapter 14 (14.1)
Pointers [December 30, 2011]

Programs

Program 1 Due: January 30, 2012 Morgage Calculator Postscript PDF Tests and Data [January 16, 2012]
Program 2 Due: February 21 (Tuesday!), 2012 Moon Lander Game Postscript PDF Tests and Data [February 5, 2012]
Program 3 Due: March 9 (Friday), 2012 Graphics primitives library Postscript PDF Tests and Data [February 24, 2011]

Lab Exam Preparation

Lab Exam 2 sample problems Postscript PDF

Lab exam 3

Example 1 Postscript PDF
Example 2 Postscript PDF
Example 3 Postscript PDF

Labs

Lab 0 Due: Wednesday, January 4 Surveys and Setup Postscript PDF [January 3, 2012]
Lab 1 Due: Monday, January 9 Hello, World! Postscript PDF Data and Tests [January 3, 2012]
Lab 2 Due: January 11 Simple C Programs Postscript PDF Data and Tests [January 9, 2012]
Lab 3 Due: Friday, January 13 Simple C Functions/Testing Postscript PDF [January 11, 2012]
Lab 4 Due: Wednesaday, January 18 Assignment and Functional Composition Postscript PDF [January 13, 2012]
Lab 5 Due: Monday, January 23 Conditional statements Postscript PDF [January 18, 2012]
Lab 6 Due: Monday, January 30 Conditional statements Postscript PDF Data and Tests [January 25, 2012]
Lab 7 Due: Wednesday, February 1 Out Parameters, scanf() Postscript PDF Data and Tests [January 30, 2011]
Lab 8 Due: Monday, February 6 Loops Postscript PDF Data and Tests [February 3, 2012]
Lab 9 Due: Monday, February 13 Loops and Images Postscript PDF Data and Tests [February 7, 2012]
Lab10 Due: Monday, February 22 Loops and Arrays Postscript PDF Data and Tests [February 14, 2011]
Lab 11 Due: Wednesday, February 24 Functional Decomposition Postscript PDF Data and Tests [February 21, 2011]
Lab 12-1 Due: Monday, March 5 Functions, strings and bioinformatics Postscript PDF Data and Tests [February 27, 2012]
Lab 12-2 Due: Monday, March 5 Strings and bioinformatics Postscript PDF Data and Tests [February 28, 2012]
Lab 13 Due: Monday, March 12 File I/O, Strings and Structs Postscript PDF Data and Tests [March 5, 2012]

Homeworks

Homework 1 Due: January 23, 2012 (Monday) Postscript PDF [January 17, 2012]
Homework 2 Due: January 27, 2012 (Friday) Postscript PDF [January 22, 2012]
Homework 3 Due: February 22, 2012 Postscript PDF [February 17, 2012]
Homework 4 Due: February 22, 2012 Postscript PDF [February 17, 2012]

Homework Data/Tests

Lecture Notes

Lecture 1 Fundamentals of Fundamentals: Part 1: Computers Postscript PDF [September 11, 2009]
Lecture 2 Fundamentals of Fundamentals: Part 2: Software Postscript PDF [September 11, 2009]
Lecture 3 Fundamentals of Fundamentals: Part 3: Programming Languages and Programs Postscript PDF [September 11, 2009]
Alex's Programming languages scorecard Postscript PDF [September 11, 2009]
Lecture 4 Basics of C Postscript PDF [September 11, 2009]
Lecture 5 Simple Statments and Expressions Postscript PDF [January 8, 2012]
Lecture 6 Functions Postscript PDF [January 8, 2012]
Lecture 7 Boolean expressions, If statements Postscript PDF [September 11, 2009]
Lecture 8 Break and Switch Postscript PDF [September 11, 2009]
Lecture 8-1 Operator prcedence in C Postscript PDF [October 26, 2009]
Lecture 8-2 Pointers, scanf() Postscript PDF [September 11, 2009]
Lecture 9 For-loops Postscript PDF [September 11, 2009]
Lecture 10 While-loops Postscript PDF [October 21, 2009]
Lecture 11 Arrays Postscript PDF [October 26, 2009]
Lecture 12 Strings Postscript PDF [November 13, 2009]
Lecture 13 File I/O Postscript PDF [November 23, 2009]
Lecture 14 Structures Postscript PDF [November 23, 2009]


Other Materials

UNIX/Linux:
Basic Linux commands (courtesy of Dr. O'Gorman).
CPE 105X: CPE 105X web page
Course Help: Tutoring Center,
Addressing your instructors: Name games (courtesy of Dr. Staley).
Academic Integrity Policies: Cheating at Cal Poly, All Academic Policies.
September 17, 2008, dekhtyar at csc.calpoly.edu