Week
|
Week Of
|
Topics
|
Lecture Materials (020)
|
Readings
|
Exams
|
Lab
|
Due
|
1 |
Jan. 16
|
Introduction, computers, algorithms, programs, compilers
|
slides
helloWorld.cpp
inputOutput.cpp
logicError.cpp
magic8ball.cpp
runtimeError.cpp
|
Ch. 1
|
|
Unix tutorial
hello.cpp
Remote connect
(no lab this week)
|
|
2 |
Jan. 23
|
Variables, expressions, assignment, console I/O, predefined
functions
|
slides
assignmentOp.cpp
binaryVsUnaryOps.cpp
float.cpp
intVSlong.cpp
madlibs.cpp
math.cpp
simpleDivision.cpp
stringInput.cpp
subtractionError.cpp
uninitialized.cpp
|
Ch. 2, Section 4.2
|
|
Lab 1: Basic C++ programs
kittyCode.cpp
|
|
3 |
Jan. 30
|
Selection, boolean expressions, if-else, multiway-if, switch
|
slides
99beer.cpp
break.cpp
bridgeOfDeath.cpp
continue.cpp
countingSheep.cpp
doWhile.cpp
football.cpp
forLoop.cpp
grades.cpp
ifAndSemi.cpp
max.cpp
randomNumber.cpp
scope.cpp
shortCircuit.cpp
sumLoop.cpp
switch.cpp
switchToIf.cpp
whileLoop.cpp
|
Sections 3.1, 3.2
|
|
Lab 2: Sequence and selection
|
HW 0 due Thursday Feb. 1 at 11:55 P.M.
|
4 |
Feb. 6
|
Iteration, while loops, for loops, loop paradigms
|
slides
addition.cpp
addition2.cpp
callByReferenceSwap.cpp
findPrime.cpp
globalVariable.cpp
identityMatrix.cpp
maze.cpp
nestedLoop.cpp
overload.cpp
runForest.cpp
sayHi.cpp
sillySwap.cpp
sumAllToN.cpp
sumToN.cpp
|
Sections 3.3, 3.4
|
|
Lab 3: Iteration
|
HW 1, Thursday Feb. 8 at 11:55 P.M.
|
5 |
Feb. 13
|
User-defined functions, procedural abstractions
|
slides
fileCopy.cpp
fileInBasics.cpp
fileInput.cpp
helloWorldAppend.cpp
hlloWorldFile.cpp
needClose.cpp
nomNomHD.cpp (BEWARE WHEN RUNNINGTHIS)
readTable.cpp
nums.txt
toSum.txt
spending.txt
|
Ch. 4, 5
|
Quiz
Covers Ch 1-3.2 (up to week 3: if-statements)
previous quiz 1
previous quiz 2
(Note: our quiz will be about half this length)
|
Lab 4: User defined functions
|
HW 2, Thursday Feb. 15 at 11:55 P.M.
zeroToOne.cpp
|
6 |
Feb. 20
|
Basic file I/O
|
slides
arrayAddress.cpp
average.cpp
cstring.cpp
forEach.cpp
gridWorld.cpp
lineWorld.cpp
maxPassArray.cpp
maxPassInt.cpp
oneToAHundered.cpp
partiallyFilled.cpp
reverse.cpp
reverseFail.cpp
simpleArray.cpp
sort.cpp
string.cpp
stringConcatenation.cpp
stringConversion.cpp
|
Ch. 6
|
|
Lab 5: Reference parameters and basic file I/O
flightData.dat
|
HW 3, Thursday Feb. 22 at 11:55 P.M.
|
7 |
Feb. 27
|
Arrays, strings
|
2/27--Midterm 1 (whole class)
|
Ch. 7, Sections 8.1, 8.2
|
Midterm 1,
Covers Ch 1-3.4
(weeks 1-4)
Sample 1
Sample 2
|
Lab 6: Arrays
partner.cpp
|
|
8 |
March 6
|
Recursion
|
slides
badRecursion.cpp
countdown.cpp
fibonacciRecursion.cpp
rootFind.cpp
story.cpp
stringRecursion.cpp
sudokuSolver.cpp
sumToN.cpp
tangent.cpp
towerHanoi.cpp
|
Ch. 14
|
|
Lab 7: Strings
|
HW 4, Thursday March 8 at 11:55 P.M.
|
|
March 13
|
Spring Break
|
|
|
|
|
|
9 |
March 20
|
User defined functions and classes
|
slides
dateClass.cpp
dateClass.hpp
dateConstructor.cpp
datePrivate.cpp
heightsCompare.cpp
heights.cpp
pointClass.cpp
pointClassAdd.cpp
pointFriends.cpp
pointFriendsOverload.cpp
privateDates.cpp
runDate.cpp
|
Ch. 10.1-10.3
|
|
Lab 8: Recursion
|
HW 5, Thursday March 22 at 11:55 P.M.
|
10 |
March 27
|
Operator overloading, friend functions, references, const
|
slides
deleteMemory.cpp
dynamicArrays.cpp
lostPointer.cpp
memAddress.cpp
memoryLeak.cpp
newMemory.cpp
nullptr.cpp
person.cpp
personV2.cpp
personV3.cpp
pointerBasics.cpp
pointerPointers.cpp
raggedArray.cpp
returnArrays.cpp
returnPointer.cpp
|
Sections 11.1 - 11.3
|
|
Lab 9: Introduction to objects
|
HW 6, Thursday March 29 at 11:55 P.M.
|
11 |
April 3
|
Pointers and dynamic arrays
|
slides
callByValue.cpp
classMemoryLeak.cpp
classMemoryLeakFixed.cpp
copyArray.cpp
copyConstructor.cpp
copyIssues.cpp
copyVsEquals.cpp
destructor.cpp
overloadEquals.cpp
placesCopyConstructorRuns.cpp
redefiningTypes.cpp
thisSelfPointer.cpp
|
Ch. 9, Section 13.1
|
|
Lab 10: Operator overloading
|
HW 7, Thursday April 5 at 11:55 P.M.
heroineQuestV2.cpp
|
12 |
April 10
|
Dynamic memory in class definitions
|
4/10--Midterm 2 (whole class)
|
Section 11.4, Appendix 7
|
Midterm 2,
Covers weeks 5 to 8
Midterm 2 study guide
Sample 1
Sample 2
|
Lab 11: Pointers and dynamic memory
|
|
13 |
April 17
|
Inheritance
|
slides
childDestructor.cpp
classScopes.cpp
complexPoint.cpp
computerConstructor.cpp
computerConstructorV2.cpp
computerRedefine.cpp
convertClassTypes.cpp
dunecat.cpp
|
Sections 15.1 - 15.2
|
|
Lab 12: Dynamic memory in classes
Gar3D.zip
|
HW 8, Thursday April 19 at 11:55 P.M.
dice.cpp
|
14 |
April 24
|
Polymorphism, templates
|
slides
badMemoryManagement.cpp
compileVsRun.cpp
dynamicBindingFunctions.cpp
dynamicBindingFunctionsV2.cpp
dynamicObject.cpp
incorrectChildFunction.cpp
memoryOops.cpp
yetAnotherMemoryLeak.cpp
|
Section 15.3
|
|
Lab 13: Advanced Classes and Objects
|
HW 9, Thursday April 26 at 11:55 P.M.
|
15 |
May 1
|
Standard template library, review
|
slides
createThreads.cpp
prob1.cpp
prob2.cpp
sharingBetweenThreads.cpp
waitForThreads.cpp
|
TBA
|
|
No lab
|
HW 10, Thursday May 3 at 11:55 P.M.
battleship.cpp
|
16 |
May 8
|
Finals Week
|
Tuesday May 8, 6:30pm - 8:30pm in Tate Hall 101 (normal room)
|
|
Final Exam
study guide
sample 1
sample 2
|
|
|