Computer Programming 1 - Dr. Fox

advertisement
COMSC 101 – Computer Programming 1
Spring 2015
Ref. #:
11010
Course:
Computer Programming 1
Hours:
Tue & Thu in T25D from 6:00pm to 7:50pm (6 study hours per week suggested)
Text:
Problem Solving, Abstraction and Design Using C++. Friedman & Koffman. Sixth
Edition. Addison Wesley. ISBN-13: 9780136079477
Prereqs:
College-level mathematics and reading skills as determined by placement test or
previous college-level courses.
Professor:
Dr. Amy Fox
Division Phone:
(914) 606-6787
Email:
amy.fox@sunywcc.edu
Website:
http://www.docfox.weebly.com (all course material and contact information)
Course Description:
This is the first course in the Computer Science curriculum; it is designed to introduce the student to
computer programming.
A major part of this course is the design and implementation of programs to be run using the C++
programming language.
Course Objectives:
1.
To begin the study of computer science through the introduction of hardware, software and related
computer technology.
2.
To understand the fundamentals of programming technique: the analysis, design and
implementation of solutions to computer oriented problems and provide the student with these
techniques and other problem solving tools.
3.
To gain a comprehension of today's personal computers; specifically Intel microprocessor based
PCs operating under Microsoft Windows.
4.
The student will learn how to use listings and debugging aids to solve problems. These
debugging aids will include a syntax and logical error-checking environment. This knowledge will
be measured by quizzes and classroom participation.
5.
The student will learn how to define, analyze and solve problems and test problem solutions.
COMSC 101 – Computer Programming 1
Spring 2015
Course Work:
Homework:
When homework is to be graded, it will be collected at the beginning of the class
session after attendance.
Programming:
For each programming assignment, a printed copy of the following items must be
handed in on or before the due date: a high level design of the assignment in the
form of an SDM and a fully executable copy of the assignments (well
documented) source code.
The SDM will outline the program and each function in the program. This
includes a description of what the function is designed to accomplish, the
precondition and postcondition of the function, the parameters being passed
to/from the function and the variable(s) used in the function along with what each
variable represents. You will have to show a completed SDM before requesting
help with coding problems.
Lab Work:
Lab work will be assigned each class. The lab assignment must be printed and
handed in prior to the end of the class. The lab submission will serve as
attendance. Students who do not hand in labs each class session will be marked
absence.
Projects:
Projects may be assigned throughout the semester and will be graded as a
programming assignment. Particulars of individual projects will be discussed
when they are assigned.
Policies of the Instructor and College:
Attendance:
College absenteeism policy will be enforced and may lead to course failure.
Class Session:
There will be a 5 to 10 minute assignment review at the start of every lecture/lab
period. It is your responsibility to have read the appropriate text material prior to
class discussion.
Session Dismissal: There are a number of ways to get asked to leave the currently running class
session: a) Having your mobile phone on; b) Wearing headphones; c) Not paying
attention to lectures; d) Using the lab computers in an inappropriate way (using
them for something other than the current courses work or during a lecture). I
have more.
Communication:
For the most part, communications between the students and the
instructor should take place in the classroom or in an appropriate
BlackBoard discussion forum. Communications between students should
also take place in the website discussion forums. If you cannot access
BlackBoard, please tell me in class or contact me via WCC email (noted
above). My office phone number is provided above in case both
BlackBoard and the WCC email systems are not available. Also included
is the phone number for the Technology Building Division office where
messages can be left.
COMSC 101 – Computer Programming 1
Spring 2015
Academic Honesty: It is very important that any work that you submit for grading must be your own.
The programming assignments and homework must be written by you. You are
allowed to help each other with the programming assignments using the
discussion board, and get help from the tutors if on campus, but the help must
not consist of your working together to produce essentially the same program, or
having the tutor tell you what to write line by line. If you are not clear about the
difference between getting help and cheating by copying another’s work, please
talk to me. If it is still not clear you may have to decide to do the work entirely on
your own.
Similarly, cheating in any way will not be tolerated. Anyone found cheating on
quizzes, tests or exams will receive a zero for the instrument. Continued failure
to observe these rules will result in failure of the course and possible dismissal
from Westchester Community College.
Quizzes:
A quiz will be given at the start of class on Thursdays each week (starting the
first week), that covers any course reading, lecture or lab material to date. Most
quizzes are open notes and book, and will be 15-20 minutes in duration. Each
student’s lowest quiz grade for the semester will be dropped. Makeup quizzes
will not be given without an acceptable documented excuse.
Programs:
There will be a programming assignment due every other week. Each program
is due the last meeting period two weeks after it was assigned; see assignment
schedule listed on the next page.
Exams:
There will be three exams given during the semester; 2 exams and a final. The
exams will cover material based on lectures, labs, textbook readings and
programming assignments. Makeup exams will not be given without an
acceptable documented excuse.
Grading:
Quizzes are 30 points each; Programs are 50 points each; Exams are 100 points
each; Final is 100 points. Grading is on a summative point scale. It is at the
instructor’s discretion to provide extra credit work to the class or an individual
student.
Final Exemption:
Students that receive a grade >= 90 on every quiz, exam and programming
assignment and have submitted all lab assignments will be exempt from the
course final exam.
COMSC 101 – Computer Programming 1
Class Sessions:
Review
Break
Spring 2015
5 minutes at start of class session
10 minutes at 6:50pm
Class Outline:
Week
1
Chapter
1, App.A
Description
Computer Systems, Numbering Systems &
Integrated Development Environments
2
1
Object Oriented Programming Concepts
2-4
2, App.B
C++ Overview, Data Types, Identifiers & Expressions
5-7
3, 6
Functions, Classes and Scope (class, function and variable)
8
4
Control Structures
9-11
5
Loop Structures
12
8
Streams and File Processing
13-15
9
Array Processing
Quiz & Exam Schedule:
Quizzes:
Exam 1:
Exam 2:
Final:
09/04
09/11
09/18
09/25
10/02
10/07
10/09
10/16
10/23
10/30
11/06
11/11
11/13
11/20
11/27
12/04
12/11
12/16
Will be given every week at the start of the last class session of the week.
Covering first 5 weeks of material; given on the first class session of week 6.
Covering second 5 weeks of material; given on the first class session of week 11.
Covering all course material; date and time may change.
Quiz #1
Quiz #2, Programming Assignment 1
Quiz #3
Quiz #4, Programming Assignment 2
Quiz #5
Exam 1
Quiz #6, Programming Assignment 3
Quiz #7
Quiz #8, Programming Assignment 4
Quiz #9
Quiz #10, Programming Assignment 5
Exam 2
Quiz #11
Quiz #12, Programming Assignment 6
Thanksgiving Holiday – No Class
Quiz #13, Programming Assignment 7
Final Review
Final Exam, Programming Assignment 8
COMSC 101 – Computer Programming 1
Spring 2015
COURSE OBJECTIVES FROM OFFICIAL SUNY SYLLABUS FORM:
List the course’s learning objectives and describe how each objective/outcome will be measured.
Objective - Upon successful completion, the student
will be able to:
describe briefly the software engineering process
describe the standard object types
use variables and constants in a program
choose the appropriate object types for a particular
problem
use different object types in a program
evaluate arithmetic expressions
write arithmetic expressions to solve a given problem
write simple I/O in a program
explain the meaning of a class and an object
use a the string class in a program (other classes may be
used as well, at the instructor’s discretion)
analyze a decision structure, both single and double
alternative
choose and implement the appropriate decision structure
for a problem
analyze the different looping structures
choose and implement the appropriate looping structure
for a problem
analyze the behavior of a given method
write a method to accomplish a given task
This outcome will be measured by one or more of the
following:
Written assignment
Verbal questions
Written demonstration of the software engineering process for
a simple problem
Examination question
Written assignment
Verbal question
Programming assignment
Laboratory problem
Programming assignment
Laboratory problem
Written assignment
Examination question
Written assignment
Examination question
Written assignment
Examination question
Written assignment
Programming assignment
Laboratory problem
Programming assignment
Laboratory problem
Examination question
Written assignment
Examination question
Written assignment
Verbal question
Programming assignment
Laboratory problem
Examination question
Written assignment
Walkthrough problem
Walkthrough problem
Examination question
Written assignment
Programming assignment
Laboratory problem
Examination question
Written assignment
Walkthrough problem
Examination question
Written assignment
Programming assignment
Laboratory problem
Examination question
Written assignment
Walkthrough problem
Examination question
Written assignment
Programming assignment
Laboratory problem
Examination question
Written assignment
COMSC 101 – Computer Programming 1
Objective - Upon successful completion, the student
will be able to:
analyze and write methods with value parameters
analyze code including an array
implement a list of elements as an array
write code to input and output an array
write code to do simple sequential array processing
Spring 2015
This outcome will be measured by one or more of the
following:
Walkthrough problem
Examination question
Written assignment
Walkthrough problem
Examination question
Written assignment
Programming assignment
Laboratory problem
Examination question
Written assignment
Programming assignment
Laboratory problem
Examination question
Written assignment
Programming assignment
Laboratory problem
Examination question
Written assignment
Notes:
(i) “Written assignment” refers to problems chosen from the exercises in the text book, or other similar short answer problems
assigned as classwork or homework, or an assignment requiring a longer (possibly a paragraph or more) written answer.
(ii) “Walkthrough assignment” refers to a problem where the student is given code and is required to show the values of all the
variables and the output as the code is executed.
Download