CSC 180: topics covered so far

Thursday, Sept 7, 2000:
course outline, "computer program", "programming language", computer accounts, algorithms.
Friday, Sept 8, 2000:
data types, data representation, two's complement.

Wednesday, Sept 13, 2000:
finish two's complement. Programming: functions (and procedures).
Thursday, Sept 14, 2000:
statements, numeric expressions, operator precedence.
Friday, Sept 15, 2000:
variables, input, comments, declarations versus definitions.

Wednesday, Sept 20, 2000:
extern declarations, library linkage, modular design, summary of functions: naming, scope, parameterization, return value.
Thursday, Sept 21, 2000:
integer division, boolean expressions.
Friday, Sept 22, 2000:
'if' statements, 'switch' statement.

Wednesday, Sept 27, 2000:
finish 'switch' statement (if necessary), tracing and testing, iteration (loops).
Thursday, Sept 28, 2000:
more iteration.
Friday, Sept 29, 2000:
more loops, lead in to arrays.

Wednesday, Oct 4, 2000:
arrays, some string functions.
Thursday, Oct 5, 2000:
high-level languages versus machine language.
Friday, Oct 6, 2000:
compilers and interpreters; array representation.

Wednesday, Oct 11, 2000:
array address calculations; pointers.
Thursday, Oct 12, 2000:
array and pointer examples.
Friday, Oct 13, 2000:
more pointers; don't use goto; #define; hierarchical filesystems.

Wednesday, Oct 18, 2000:
i/o redirection; begin manipulating files in C.
Thursday, Oct 19, 2000:
manipulating files in C.
Friday, Oct 20, 2000:
structs; xor; bitwise boolean operators; game strategy.

Wednesday, Oct 25 or Thursday, Oct 26, 2000:
a strategy for Nim; some hints on organizing your program.
Thursday, Oct 26, 2000:
typedef; more complex loop structures.
Friday, Oct 27, 2000:
other control-flow issues.

week of Nov 1, approximately (the two lecture sections were not synchronized at this point):
floating-point comparisons; data structures in files (random access etc); searching and sorting algorithms (linear search, binary search, bubblesort).

week of Nov 8, approximately:
more searching and sorting algorithms (above plus insertion sort). Recursion. Review of and remaining details of C data types and operators.

approximately Friday, Nov 10 to Wednesday, Nov 15, 2000:
Truncation error, round-off error, polynomial evaluation, root-finding, quadrature (numerical integration), adaptive quadrature.
approximately Thursday, Nov 16, 2000:
the software life cycle; phases of development.
Friday, Nov 17, 2000:
the contract model of specifications.

Wednesday, Nov 22, 2000:
Larger programs in C; modules; "make". Begin C++.
Thursday, Nov 23, 2000:
C++: classes.
Friday, Nov 24, 2000:
Derived classes (inheritance).

Wednesday, Nov 29, 2000:
Recreational programming.
Thursday, Nov 30, 2000:
More on strings and arrays and pointers.
Friday, Dec 1, 2000:
Introduction to dynamic data structures.

Wednesday, Dec 6, 2000:
Review.