CPS120: Introduction to Computer Science Spring / Summer: 2002 Instructor: Paul J. Millis
Jan 01, 2016
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 vocabularyInternal representation of dataProgramming conceptsOperating systemsProgramming languages and softwareDatabasesData 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 2Sn 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
Syllabus
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 12-15
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_#1ADue 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_#1BDue 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
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 Structure of a C++ Program; Variables, Data Types and Constants
#5 Variables Assignment_#2Due 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 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
Assignment_#3Due 6/25/02
Code: Menus
13 06/20/02 Loops 4.4 Looping, Do While
#9 Looping
14 06/25/02 Functions 5.1 - 5.4 Functions, Functions I, Functions II
#10 Functions Class Project Due 7/16/02
15 06/27/02 Data Files 6.1 Data Files #11 Data Files
16 07/02/02 Data Structures 7.1 - 7.5 Pointer, Structures, User-defined data types
07/04/02 NO CLASS 4th of July
17 07/09/02 Strings
18 07/11/02 Arrays 6.3 Arrays #12 Arrays Assignment_#4Due 7/18/02
19 07/16/02 Intro to SQLExam Review
Introduction to SQL
Solutions to worksheets and assignments
20 07/18/02 Final Exam
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 GradesFrom To
A 93 100A- 90 92.999B+ 87 89.999B 83 86.999B- 80 82.999C+ 77 79.999C 73 76.999C- 70 72.999D+ 67 69.999D 63 66.999D- 60 62.999F 0 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