CPS 120 - Washtenaw Community College

Download Report

Transcript CPS 120 - Washtenaw Community College

CPS120: Introduction to
Computer Science
Spring / Summer: 2002
Instructor: Paul J. Millis
Course Details
CRN: 14452
Section:F1
Dates: 05/7 - 07/18/2002
Time and Location:
Tuesday / Thursday
05:30PM - 07:40PM BE 282
Instructor Details
Instructor: Paul J. Millis
Office Phone Number: (734) 647-7508
Class Email: [email protected]
Emergency Email: [email protected]
Office Hours:
Before and after class and by appointment
Course Description
• This is a course in introductory problem solving
and programming techniques that introduces
students to computers and computer programming.
• It is assumed that you have a basic high school
mathematics background, although no prior
computer science is assumed.
• Topics covered will include the general
characteristics of computers, the properties of
algorithms, techniques of problem solving and
testing of computer programs in C++.
Objectives







Basic concepts and vocabulary
Internal representation of data
Programming concepts
Operating systems
Programming languages and software
Databases
Data communications
Tentative Schedule
• Since this is the first time this course is
being taught, I reserve to make appropriate
changes to the schedule as we go along. I
will notify you of all changes that are made
at the earliest possible juncture and all
changes will be posted to the class web site.
Class Schedule, Pt 2
S
n
Date
Topic
Readings
Other Reading
Worksheets
Programs
Handouts
1
05/07/02
Logistics, Introduction
1.1 - 1.3
General
Information 1-7
#1 Computer
Basics
2
05/09/02
IPO, Storage,
Software,
Program Languages
Appendix A
General
Information 8-11
OS Commands,
PC Specs
3
05/14/02
Electronic
Communications,
Networking, Security
General
Information 1215
Computer Security Basics
4
05/16/02
Computer
Mathematics
1.4 - 1.8
Computer
Mathematics
#2 Computer
Mathematics
5
05/21/02
How Computers are
Programmed,
Program Compiling,
Introduction to
Debugging
2.1 - 2.2
Brief Intro to
C++, Common
Syntax and
Semantic Errors
#3 Debugging
Syntax Errors
Assignment_#1A
Due 5/30/02
Assignment Grading,
Programming process,
Programming practices; C++
Compiler, Debugging,
Debugging Practice
6
05/23/02
How Algorithms are
Developed,
Syntax Errors,
Logic Errors
2.3
#4 Debugging
Logic Errors
Assignment_#1B
Due 5/30/02
Pseudocode,
Test plans
05/28/02
NO CLASS
MEMORIAL DAY
7
05/30/02
Exam Review
Exam Review
8
06/04/02
Midterm Exam
Syllabus
Class Schedule, Pt 2.
Sn
Date
Topic
Readings
Other Reading
Worksheets
Programs
Handouts
9
06/06/02
What We Know about
C++; Variables and
Constants
3.1 - 3.3
#5 Variables
Assignment_#2
Due 6/13/02
Programming Standards,
Program Documentation
Standards, C++ Reserved
Words
10
06/11/02
Basic Structure,
Programming Concepts
3.4 - 3.5, 4.1
Structure of a C++
Program;
Variables, Data
Types and
Constants
Operations
#6 Operations
Overall operator precedence
11
06/13/02
String Basics, Screen
I/O
3.6 - 3.7
I/O
#7 I/O
Code: Formatted Output
12
06/18/02
Decision Making
4.2, 4.3
Control
Statements;
If Statements
#8 Program
Structures
13
06/20/02
Loops
4.4
Looping, Do
While
#9 Looping
14
06/25/02
Functions
5.1 - 5.4
#10 Functions
15
06/27/02
Data Files
6.1
Functions,
Functions I,
Functions II
Data Files
16
07/02/02
Data Structures
7.1 - 7.5
07/04/02
NO CLASS
17
07/09/02
Strings
18
07/11/02
Arrays
19
07/16/02
Intro to SQL
Exam Review
20
07/18/02
Final Exam
Assignment_#3
Due 6/25/02
Code: Menus
Class Project
Due 7/16/02
#11 Data Files
Pointer,
Structures, Userdefined data types
4th of July
6.3
Arrays
Introduction to
SQL
#12 Arrays
Assignment_#4
Due 7/18/02
Solutions to worksheets and
assignments
Text
• Introduction to Computer Science by
Ramon A. Mata-Toledo and Pauline K.
Cushman, published by McGraw-Hill,
copyright 2000, ISBN: 0-07-134554-X
Recommended
• Computers Simplified, 5th Edition,
Published by IDG Books Worldwide Inc.,
copyright 2000, ISBN: 0-7645-3524-2
Other Sources of Information
• Introduction to Computer Science Using C++ by Todd Knowlton,
published by South-Western Educational Publishing, copyright 1998,
ISBN: 0-538-67600-0
• Sams Teach Yourself C++ in 21 Days (4th Edition) by Jesse Liberty,
published by Sams, April 2001; ISBN: 067232072X
• Programming Logic for Business by Laura Saret, published by
McGraw-Hill Higher Education, November 2000; ISBN: 0073660965
• A Guide to Programming Logic and Design - Introductory by Joyce M.
Farrell published by Course Technology, March 1999; ISBN:
0760011486
• An Introduction to Programming with C++, Second Edition by Diane
Zak, published by Course Technology, December 2000; ISBN:
0619033592
• Starting Out Quickly with Visual C++ by Doug White, published by
Delmar Publishers, June 2001; ISBN: 1576760693
Other Resources
• You will need approximately 12 floppy disks with
labels. One floppy should contain your working
files.
– Make sure you have these on the nights of the labs
– Zip disks are also OK
– YOU are responsible for backups
• You need to use your WCC email account for the
purposes of this class
– If you haven't activated it, check the course schedule
for directions on how to do this
– Techs in the labs will help you with this
Programming Assignments
• Programming assignments must be
completed outside of class. You will have
to spend a significant amount of time in
the completing the programming and
homework assignments, especially the final
seven weeks of the course.
Compilers
• It is strongly encouraged that you install the Visual
C++ compiler or another available compiler on
your home computer so that you will be able to
complete your work there. Otherwise, you are
expected to use the college's computer labs.
• Starting Out Quickly With Visual C++ includes a
compiler, as does Teach Yourself C++
• Other compilers are available on the web as
freeware
Grading
• The make up of the final grade will be:
–
–
–
–
–
–
–
5% Attendance / Participation
10% Quizzes
10% Class Project
15% Worksheets
15% Programs
20% Assignments
25% Final Exam
Integrity Policy
• Unless an assignment is specifically
designated as a group project, all students
submitting duplicate programs (or slight
variations) will be penalized at the
instructor’s discretion, even the student who
did all or most of the original work
– I recognize these are simple programs, so don't
stress over this issue
Quizzes
• Quizzes may be given at the beginning and/or end
of a number of classes.
– Expect more early in the term
• Students who are not present for a quiz, unless
they have an emergency and have informed the
instructor, will receive a zero.
• There is no makeup opportunity for quizzes.
• I may drop the lowest score on quizzes to allow
for emergencies students have during the term.
Late Assignments
• Late programming assignments and
worksheets will be accepted but they will
be worth fewer points
• If your program does not compile or work
correctly, you should still submit it
• See grading handout for details
Final Grades
From
A
AB+
B
BC+
C
CD+
D
DF
To
93
90
87
83
80
77
73
70
67
63
60
0
100
92.999
89.999
86.999
82.999
79.999
76.999
72.999
69.999
66.999
62.999
59.999
Exams
• There will be two exams in this class, a midterm on
6/04/02 and the final on 7/18/02
• These tests will contain multiple choice and true & false
questions as well as debugging and programming problems
• The mid-term will be more conceptual and the final more
practical in nature
• Make-up exams will be given only for emergency
circumstances
– The instructor reserves the right to make a decision in all such
cases
• If an emergency does arise, you must call or email the
instructor as soon as possible before the exam in order to
arrange for a make-up
Assignment Scheduling
• Worksheets will be due at the next class after they
are assigned
• Programming assignments will be due one week
after they are assigned
• Late assignments mean reduced points
• Zero grades will be given for missed quizzes,
homework, and program assignments if the
instructor has not been consulted in advance.
Class Attendance Policy
• Class attendance is mandatory and will be
taken each class period. If you have a need
to miss a class, please inform the instructor
by email
CPS 120: Introduction to Computer Science
• This course prepares you to continue with programming
languages
• We will focus on the logical thinking needed for
programming
• Topics include:
–
–
–
–
–
–
–
Tools of structured programming techniques
Basic input/output logic development
Working with documentation
Arithmetic operations
Program and logic development
Data validation and logic development
Control break-program (multiple level) and logic development