Instructor: Bob Rinker Office: JEB 235 Email: rinker@cs.uidaho.edu Office Hours: 3:30 M, 12:30 TW, 11:30 Th Phone: (208)885-7378
A picture of my schedule is available
here
Lab Instructors: TBD Office: TBD
Please feel free to see any instructor or lab instructor if you have a
question about the class or a problem with an assignment or lab.
Catalog Description:
CS 120 Computer Science I (4 cr). Fundamental programming constructs,
Algorithms and problem-solving, Fundamental data structures, Overview of
programming languages, Virtual machines, Introduction to language translation,
Declarations and types, Abstraction mechanisms, Object-oriented programming.
Three lec and one 2-hr lab a wk. Prereq: Math 108 or sufficiently high ACT,
SAT, or Math Placement Test score to qualify for Math 143.
Syllabus: Downloadable from here
(ps
or
pdf).
. Grading:
Your grade will be calculated using the following percentages:
Two mid-semester exams
30%
Final exam (comprehensive)
20%
Quizzes
15%
Programming assignments
15%
Labs
20%
Total
100%
The letter grade you receive from the course will be determined as follows:
90%-100%
A
89.9%-80%
B
79.9%-70%
C
69.9%-60%
D
Below 60%
F
The instructor reserves the right to adjust these percentages lower if
deemed necessary.
Announcements:
Any class announcements will be posted here.
Assignments:
- Assignment #1
here.
- Assignment #2
here.
- Assignment #3
here. The nim program is available
here
- Assignment #4
here.
- Assignment #5
here.
The calculator program is available
here
- Assignment #6
here.
- Assignment #7
here.
- Assignment #8
here
. You can use the following links to download
game.cpp
and
game.txt
- Assignment #9
here
The CursWin files:
CursWin.cpp
and CursWin.h
The next assignment will be to modify the Game of Life so that the initial
game is loaded from a file, rather than filled randomly.
You do not have to turn in your Game of Life program this week, but will
need to turn it in next monday, with the added feature.
- Assignment #10
here
- Assignment #11
here
- Assignment #12 - the Last one! This assignment is for practice only - it
doesn't need to be turned in.
here Labs:
You will need an "SSH client" (program) to access wormulon.cs.uidaho.edu,
which is the CS Department's Linux server. A program named PuTTY is recommended
for Windows; On the Mac, the terminal.app can be used. On linux, you can use
a shell.
Slides on general C++ concepts and features, arithmetic
(
pdf
or
ps
)
Slides on C/C++ compilation process
(
pdf
or
ps
)
Slides on C++ decision statements (if, switch)
(
pdf
or
ps
)
Slides on C++ control statements
(
pdf
or
ps
)
Slides on C++ looping statements (while, do-while, for)
(
pdf
or
ps
)
Slides on C++ functions
(
pdf
or
ps
)
Slides on C++ arrays
(
pdf
or
ps
)
Slides on C++ Two-dimensional arrays
(
pdf
or
ps
)
The example program we discussed in class is available
here
Slides on C++ structs
(
pdf
or
ps
)
Slides on C++ Classes
(
pdf
or
ps
)
Slides on the C++ String Class
(
pdf
or
ps
)
Slides on C++ files
(
pdf
or
ps
)
Slides on binary arithmetic
(
pdf
or
ps
)
Slides on floating point format
(
pdf
or
ps
)
Slides on pointers
(
pdf
or
ps
)
Slides on dynamic memory
(
pdf
or
ps
)
Slides on linked lists
(
pdf
or
ps
)
Slides on recursion
pdf
or
ps
)
Slides on searching
(
pdf
or
ps
)
Code for a couple of versions of the binary search is available
here
Slides on sorting
(
get df
or
ps
)
Code for several of the sorts is available
here
Review sheet for the final is available
here.
Some questions on topics we have covered since the last test are available
here.
Some example test questions for the final are available
here