CS 131: Introduction to Computer Science I
Spring 1999
04 South College
| Section 1: | 11 MWF 3:30-5:30 M |
Prof. Grant Braught 254 South College ...... x1401 |
braught@dickinson.edu |
Text: The Analytical Engine: An Introduction to Computer
Science Using the Internet, Decker & Hirshfield, PWS
Publishing, 1998.
CS131 is intended to be the entry point in the Computer Science
curriculum for students with no previous programming experience. In
addition to teaching the basics of programming and problem-solving, it
introduces Computer Science as a major scientific discipline, with
topics including computer organization, networking, and operating
systems. Special emphasis is placed on problem-solving and
experimentation through Web-based programming using JavaScript.
The majority of class time will be spent working semi-independently on
the computer -- completing online lessons, experimenting with existing
programs, and studying general resources over the World Wide Web. In
addition to three 50 minute class meetings per week, each section has
a scheduled 2 hour lab. If you must miss a lab session for a valid
reason, discuss this with your instructor prior to missing the
lab so that alternative arrangements can be made.
Policy on Collaboration
When working in the lab, you are encouraged to discuss ideas and
results with fellow students. However, the answers to specific
questions in the Lessons and Lab Assignments must be your own work.
Any person guilty of plagiarism, the submission of another person's
ideas or work as one's own, most likely will suffer the consequences
of academic censure and at least a failing grade in the course. If you
have any doubts as to the meaning of plagiarism as it applies to this
course, you should discuss them with the instructor.
Grade Determination
Most class periods will be spent working through Online Lessons
which introduce programming and general computer science concepts, and
contain numerous exercises to demonstrate and reinforce these
concepts. You should complete all of the exercises in each lesson. Within each lesson you will be required to turn in selected exercises. The exercises that you must turn in will be marked with an icon (
). A printout of your solutions to the selected exercises must be
submitted at the beginning of the next class period. For example, the
exercises from a Monday Lesson must be completed and handed in on
Wednesday. You may note that Lessons that are based on readings from
the text are divided into two parts. Part A must be submitted via
email by 8 am on the specified date. Part B will be due at the
beginning of the next class period, as with other Lessons.
Solutions to the odd numbered exercises in the Online Lessons will be
posted by late afternoon on the due date. Accordingly, late
submissions will not be accepted. You will be allowed to drop
your 5 lowest Lesson grades, however.
Lab Assignments are to be completed during the scheduled lab period
and submitted at the end of that period. Lab Assignments may not be
submitted late without prior consent of the instructor.
| online lessons | 10 % |
| 12 lab assignments | 35 % |
| 2 50-minute tests | 30 % |
| cumulative final exam | 25 % |
| Date | Topic | Lesson | Lab Assignment |
|---|---|---|---|
|
Jan 20
22 |
course overview algorithms and JavaScript |
0 1 |
NO LAB |
|
25
27 29 |
displaying values & expressions variables & assignments predefined functions |
2 3 4 |
1: JavaScript basics |
|
Feb 1
3 5 |
History of Computing (pp. 1-18) turtle graphics abstraction & functions |
5a &
5b 6 7 | 2: Mad Libs |
|
8
10 12 |
Local Applications (pp. 22-50) function calling sequence abstraction & libraries |
8a &
8b 9 10 |
3: drawing |
|
15
17 19 |
repetition & for loops for loops & sums Global Applications (pp. 53-67) |
11 12 13a & 13b |
4: grammars |
|
22
24 26 |
Global Applications (pp. 67-78) review TEST 1 |
14a &
14b |
NO LAB |
|
Mar 1
3 5 |
if statements if statements & counters repetition & while loops |
15 16 17 |
5: random walk |
|
8
10 12 |
in-class exercises boolean expressions program design |
18 19 |
6: random walk |
|
15
17 19 |
SPRING BREAK SPRING BREAK SPRING BREAK |
||
|
22
24 26 |
in-class exercises Designing for Use (pp. 81-109) Designing for Use (pp. 109-124) |
20a & 20b 21a & 21b |
7: guessing game |
|
29
31 Apr 2 |
dynamic pages via JavaScript dynamic images via JavaScript event-driven programming |
22 23 24 |
8: user interface |
|
5
7 9 |
in-class exercises Program Translation (pp. 200-230) strings |
25a & 25b 26 |
9: event-driven conversions |
|
12
14 16 |
strings & design review Test 2 |
27 |
10: encryption |
|
19
21 23 |
Hardware (pp. 233-244) Hardware (pp. 247-257) Hardware (pp. 257-265) |
28a &
28b 29a & 29b 30a & 30b |
11: Prisoner's Dilemma |
|
26
28 30 |
Theory of Computation (pp. 269-291) Artificial Intelligence (pp. 295-323) Computers & Society (pp. 326-347) |
31a &
31b 32a & 32b 33a & 33b |
12: Hangman |
|
May 6
|
Section 1: FINAL EXAM 2-5 (Thursday) |
||