CS 170 - Introduction to Computer Science

Important Resources

Useful Libraries


To access the server when not on the Oxford College campus, you will need to setup VPN access

Recent News: There is now a tutor available for this class in the mathcenter. Her name is Gabrielle Blom, and she is available Tuesdays from 5 to 7 pm and Wednesdays from 6 to 7 pm. You can sign up for tutoring with her by filling out the online form here.

Tentative Schedule

DateDayReadDo
Thu,
Aug 24
1
Intro to Computers, Programs, and Java
Numbers in Other Bases
How a Transistor Works
Exercises - Bases
Ensure You Have Access to Important Software
Tue,
Aug 29
2
Logic Gates
Use Transistors to Build a NAND Gate
The Two's Complement
Two's Complement Converter
Thu,
Aug 31
3
The IEEE 754 Format
IEEE 754 Converter
ASCII
The Unicode Miracle
A Simple Computer
The Command Line
Exercises - Two's Complement & IEEE 754 Form

Lab 00
due Sep 12, 11:59pm
Tue,
Sep 5
4
Bash on Windows (Beta - only 4 the brave!)
Interpreters vs. Compilers
Variables & the 8 Primitive Data Types
Using Command-Line Arguments
Converting Strings to Numeric Types
"Hello World" (CLI)
"Hello World" (Eclipse IDE)

Exercises - The Command Line (CLI)
Exercises - Arguments & Expressions
Thu,
Sep 7
5
Expressions, Literals, and Constants
Commonly Used Methods of the Math Class
Objects - A First Look
Adding External Libraries to a Project
First Look at Graphics & ACM Libraries
Working with Colors
Canvas Dimensions
Exercises - The ACM Libraries

Lab 01
due Sep 19, 11:59pm
Tue,
Sep 12
6
Shortcut Assignment Operators
Type Conversion
The char Data Type
Unicode Reference Table
Strings
The printf Method
The Scanner Class
The JOptionPane Class
Working with Files
Exercises - Scanner, Random, and File Classes
Thu,
Sep 14
7
Boolean Expressions
Conditional Statements
Exercises - Booleans and Conditionals

QuadraticSolver.java
Craps.java
(done in class)

Lab 02
due Sep 26, 11:59pm
Tue,
Sep 19
8
Evaluation of Expressions
Using the Breadboard Timer
Thu,
Sep 21
9
Loops

Exercises - Loops

Lab 03
due Oct 3, 11:59pm
Tue
Sep 26
10
Review Pascal.java
(done in class)

Review Exercises A1
Review Exercises A2
Thu
Sep 28
11
TEST 1 Lab 04
due Oct 10, 11:59pm
Tue
Oct 3
12
Methods RemoteControlTurtle.java
(done in class)

Exercises - Methods
Thu
Oct 5
13
Recursion Lab 05
due Oct 17, 11:59pm
Thu
Oct 12
15
Arrays Exercises - Arrays
Tue
Oct 17
16
Searching and Sorting Arrays Lab 06
due Oct 24, 11:59pm
Thu
Oct 19
17
Rock Eagle Conference (no class) Review Exercises B1
Review Exercises B2
Tue
Oct 24
18
Thu
Oct 26
19
TEST 2
Tue
Oct 31
20
Objects and Classes Exercises - Objects
Thu
Nov 2
21
Subclasses, Inheritance, & Polymorphism Exercises - Subclasses

Lab 07
due Nov 9, 11:59
Tue
Nov 7
22
Abstract Classes and Methods Exercises - Abstract Classes

SimpleSpaceship.java
SimpleSpaceshipFun.java
Thu
Nov 9
23
Interfaces
Tue
Nov 14
24
The Unified Markup Language (UML)
Events & Inner Classes
Playing Sounds
Exercises - Interfaces, Inner Classes, and Events

Review Exercises C1
Review Exercises C2
Thu
Nov 16
25
GuiFun.java
Tue
Nov 21
26
TEST 3
Tue
Nov 28
27
KeyControlledGCompound.java
KeyControlledUfo.java
KeyControlledUfoTest.java
ufo.png

Animation.java
AnimationTest.java
walking_man_frames.zip
explosion_frames.zip
ezgif.com/split (external link)
Thu
Nov 30
25
Tue
Dec 5
26
FINAL PROJECT SHOWCASE

Final Exam:

11J Section (MWF 11:50am - 1:30pm) - Friday, Dec 8th, 9:00am - 12:00pm