level programming language is taught with an emphasis on program... and documentation. Discussion of ethical, social, and legal issues... SYLLABUS

advertisement
SYLLABUS
CMPS 1043-02: Computer Science 1
Catalog Description: Introduction to methods of problem solving and algorithm development. A high
level programming language is taught with an emphasis on program design, coding, debugging, testing,
and documentation. Discussion of ethical, social, and legal issues related to computing.
Instructor:
Dr. Catherine V. Stringfellow
Office:
Bolin Science Hall, Room 128C
Office phone:
397- 4578
E-mail:
catherine.stringfellow@mwsu.edu
Office Hours:
M,W, F 9-10, 11-12, MW 2-3 and 5-5:30pm, T R 11-12 and by appt
Credits: 3 (3 hour lecture)
Course Prerequisite: Concurrent enrollment in MATH 1233 or 1533 or MATH 1203 (Bus. majors)
Required Textbook and Materials:
Starting Out with C++, 5th ed., Gaddis, Walters, Muganda
General Objectives
1) to learn the “software engineering" approaches to designing and implementing computer
programs
2) to learn the concepts of data abstraction and modularization
3) to learn the syntax and structure of C++ concepts such as objects and arrays
Specific Objectives
At the conclusion of this course, students should be able to:
1) analyze the requirements of a problem;
2) develop designs to solve moderately complex problems;
3) implement solution designs by coding them into the C++ programs, then compile
and execute them.
4) write programs containing object-oriented concepts and arrays
Major Topics
1) Complex algorithm discovery and design
2) Introduction to software engineering programming concepts
3) The syntax of C++ for object-oriented programming and arrays
4) Introduction to the idea of a data structure
Instructional Methods and Techniques
1) The class will meet twice for 1 1/2 hours of lecture each week.
2) Lectures will stress exploration, demonstrations, and hands-on activities
3) Assignments will provide an opportunity for the students to explore, develop and program
solutions to problems in C++
Assignments for Course
1) Readings from the textbook
2) Homework assignments and Quizzes
3) Programming assignments
4) Exams
Attendance: Students are expected to attend all lectures and the lab orientation.
Exams and Assignments: There will be three exams and one comprehensive final exam. Exams cover
material from the text as well as programming activities. The lectures may not cover all the material in
the textbook. There will be several major programming projects as well as small programming
assignments. The projects will be expected to be complete and robust, including good user interfaces
and the ability to handle improper input.
Course Evaluation:
Homework Assignments/quizzes
Programming Assignments
Three Tests
1 Final Exam
= 100 pts.
= 450 pts.
= 300 pts.
= 150 pts.
Grades may be determined according to this scale (approximate):
A
90% - 100%
B
80% - 89%
C
65% - 79%
D
55% - 64%
Program Grading Policy: Students will be required to turn in programs according to the policy that
will be handed out.
Honor Policy: Cheating will not be tolerated. Plagiarism will result in, at best, an "F"
for the assignment. Any student caught cheating on an exam will be given a zero on the
exam. Repeat offenders will be given an F for the course (that F will be computed in the
grade point average even after the course has been repeated). All work must be your
own. You may discuss the material in the course and help one another, however, I
expect any work you hand in for a grade to be your own. A simple way to avoid
inadvertent plagiarism is to talk about the assignments, but don’t read each other's
work or write solutions together. Keep scratch paper and old versions of assignments
until after the assignment has been graded and returned to you. If you have any
questions about this, please see me immediately.
Computer Science Tutoring - Fall 2006
Tutoring will be available in Bolin 119. Tutors will assist with programs and homework for CS classes.
The hours are as follows:
Monday
9:00 – 11:00 & 2:00 – 4:00
Tuesday
10:00 – 2:00
Wednesday 10:00 – 12:00 & 2:00 – 4:00
Thursday
12:00 – 2:00 & 3:00 – 5:00
Friday
9:00 – 12:00 & 1:00 – 3:00
Tentative CMPS 1043 Schedule Fall 2004
Week
1 Aug. 29
Aug 31
Topics/Materials
Course Information; 1.1-1.5 – Computers
and Programming
Numbering Systems - Handout
2 Sept 5
Sept 7
Problem Solving 1.6-1.7, 2.1
CH 2: Types; Values and Variables
3 Sept 12
2.13-2.15, CH 3: Assignment Statement,
Expressions
CH 3.8-3.9: Formatting; Library Functions
Sept 14
4 Sept 19
Sept 21
3.12:File I/O
5 Sept 26
Sept 28
6 Oct 3
Exam 1
CH4: Relational Ops; IF structures
Nested IF
Oct 5
Review
Switch
7 Oct 10
Oct 12
5.1-5.7: WHILE
Complex Logic
8 Oct 17
Oct 19
9 Oct 24
Oct 26
10 Oct 31
Nov 2
5.8 FOR, nested FOR
Review
Exam 2
6.1-6.6: Functions
6.7-6.9, 6-13: Parameters
Parameters; 6-16: Stubs and Drivers
11 Nov 7
Nov 9
12 Nov 14
Nov 16
CH 7: Classes and Objects
CRC cards
Abstraction; Declare, define and use a class
Constructors. Practice with objects
13 Nov 21
Classes as parameters;
8.1-8.7, 8.14: 1D arrays
Thanksgiving
8.6, 9.1:Array Apps; 8.8:Array parameters
8.9-8.10: multi-dim arrays;
Review (last 20 minutes)
Exam 3
Review
Final Comprehensive Exam
Tuesday 8-10:30am
Nov 23
14 Nov 28
Nov 30
15 Dec 5
Dec 7
16 Dec 12
Assignments (daily homework not listed)
Read CH 1 of text; Email Assignment
Homework
Read CH 2 for next week
Due: Email Assignment
Assign Program 1
Read CH 3
Due: Program 1
Assign: Program 2
Due: Program 2
Assign: Program 3
Read CH 4
Due: Program 3
Assign: Program 4
Read CH 5
Homework: Pattern practice
Due: Program 4
Assign Program 5
Read CH 6
Homework: Simple Function work
Due: Program 5
Assign: Program 6 (with functions);
Read CH 7
Homework: OO driver
Due: Program 6
Assign: Program 7; Read CH 8
Read rest of CH 8
DUE: Program 7
Download