CSC
150 – Computer Science I – Online (3 Credit Hours)
Fall
2007
Class Meetings: Online
Instructor: Paula Kurtenbach Office
Location: AD 144A
Office Hours: Tues & Thurs 1:00 – 3:00 pm Office Phone: (605) 688-4533
E-mail: paula.kurtenbach@sdstate.edu Campus Lab: Admin 144A
WebCT: http://webct.sdstate.edu Tech Support: (605)
688-6776
Course Description
An
introduction to computer programming.
Focus on problem solving, algorithm development design, and programming
concepts. Topics include sequence,
selection, repetition, functions, and arrays.
Course Prerequisites:
No course prerequisites.
Technical Requirements
Configuring a computer to access WebCT: http://learn.sdstate.edu/online/require.htm.
Writing C++ Programs: Ways to Write C++ Programs
Text: “Starting Out with C++, From Control Structures through Objects” 5th Edition
by Tony Gaddis. The publisher is Addison-Wesley.
SDSU
Bookstore: http://www.sdstatebookstore.com/ or
1-800-985-8771
Objective
The
primary objective of this course is to introduce students to the fundamentals
of computer science emphasizing computer programming, logical development and
implementation of solutions to problems using a high level programming language
such as C++.
Goals
·
Able to apply knowledge of computer
science, mathematics, and science.
·
Able to design, test, and implement
software, as well as to analyze and interpret data and programs.
·
Able to solve future problems by
applying techniques and skills learned in this course using modern software
tools.
Outcomes
A Student who successfully completes
this course should be able to:
·
Write,
Edit, Compile, Link, and Run C++ computer programs.
·
Perform
standard program input and output using the keyboard and the monitor.
·
Declare
and use user-defined variables, and constants using the appropriate data types.
·
Declare,
define, and call user-defined functions.
·
Write
and evaluate expressions using arithmetic, relational and logical operators.
·
Control
the flow of program execution using the appropriate sequential, selection, and
repetition statements.
·
Process
lists of values – defining, creating, traversing, and sorting.
·
Define
user-defined data types using built-in types and other language constructs.
·
Process
data that is stored in external text files.
Instructional Methods
For each unit in this online course,
students must read the text, review the online notes, complete the learning
activties, design, code and test a computer program that meets specific
criteria and take a unit quiz. Students
must also write 2 exams, a mid-term exam and a comprehensive final exam. Each exam must be taken in a proctored
environment which meets the guidelines described below. It is each student’s responsibility to obtain
an approved proctor and schedule and complete both exams within the week shown
on the WebCT calendar.
This course is not self-paced. You must
complete the activities and assignments by the date shown in the Assignment
Tool of WebCT. Late work will receive a
reduction of 10% per day up to 1 week following the due date. Work not submitted by 1 week following the
due date will receive a zero grade.
Quizzes not taken within the time specified in the WebCT quiz tool will
receive a score of 0.
To excel in this course, you must read
the text and review the online notes before completing the learning activities
and programming assignments. Many of the
program segments on the quizzes and exams are directly related to the
programming assignments. Programming
assignments become more difficult as the course progresses. It is very
important to stay caught up and to start the programming assignments early in
order to do well in the course.
Your course grade will be determined by
a combination of Quiz, Learning Activity, Programming Assignment, and Exam
scores as noted below:
Grading/ Evaluation Procedures: Grading
Scale:
Quizzes 10% 90-100% = A
Learning Activities 15% 80-89% = B
Programming
Assignments 25% 70-79% = C
MidTerm Exam 25% 60-69% = D
Comprehensive Final Exam 25% 0-59% = F
Total 100%
Quizzes
Each unit in this course includes a quiz which asks you to answer open-ended
questions about the material in the unit.
For most quizzes, you will need to describe the concepts discussed in
the unit, give the output of short programming segments and write short
programming segments to fit specific criteria. Most quizzes do not include True/False, Matching, or Multiple Choice questions. Each quiz must be taken with the lock-down
browser which can be installed by following the directions at: http://ids.sdstate.edu/WebCT/rspLckdnStudent.cfm
. Quizzes are available for a limited
time (usually 1-2 days) and once started, must be completed within a specified
time limit. The purpose of the quizzes
is to help you focus on the course materials and to give you an idea of what to
expect on the mid-term and final exams.
It is your
responsibility to install the lock-down browser and to complete the quizzes on
time. Be sure that you install the lock-down
browser software during the 1st week of the course, so that it’s
ready when you need to take the quiz.
Assignments
Each unit in this course includes Learning Activities which may ask you to
answer text book questions, complete short programming exercises, or design
solutions to problems. For each
activity, you must create a text document as stated in the directions for the
activity. You turn in the assignment by
uploading your file and submitting it in the Assignment Tool of WebCT.
Each
unit in this course also includes a Programming Assignment. To complete the programming assignment, you
must design, write and test a computer program.
Your design must be recorded and submitted along with your working
program (source code file). Both files
will be uploaded and submitted for each programming assignment. Most programming assignments will ask you to
email your design for feedback / approval before you begin coding. It is your responsibility to completely test
your program so that it meets the criteria specified in the programming
assignment. I will run each program and
test it against those same criteria to make sure that it is correct.
All
programming assignments must be coded in C++ and must compile and run under
Linux. You may use the computers in
Admin 142 to write your programs, you may use your own computer to login to the
SDSU Linux server and write your programs, or you may use a different program
to write and debug the programs on your own computer. If you choose to use a windows-based
application to write the programs, it is best to ‘ftp’ the files to the SDSU
Linux server and run them under Linux to verify their operability before
submitting them in WebCT. Directions for
transferring and running programs on the Linux server or for installing Linux
on your computer are available at: http://www.engineering.sdstate.edu/~gamradtk/computers/comps.html
Learning activities and programs will
be submitted via the Assignment tool in WebCT.
Assignments
will be posted at least one week in advance of their due date. Assignments
must be submitted by 11:55 pm on the due date or they will receive a reduction
in points of 10% per day. Assignments
turned in more than one week after the due date will not be accepted and will
receive a zero grade.
Programming
assignments that are turned in but do not compile will be returned to the
student to be “fixed and resubmitted”.
They will receive the late grade reduction of 10% per day when fixed and
re-submitted, in keeping with the late work policy. Homework that is not fixed and turned in will
receive a zero grade.
Exams
Each
student must also write 2 exams, a
mid-term and a comprehensive final exam.
Both exams contain short answer and essay questions some of which
require students to analyze or write programs or program segments. Exams are closed book, closed notes. Programmable calculators (including TI
Graphing Calculators) may not be
used during the exams. Students who
write their own quality programs for the programming assignments should be able
to score well on the exams.
Each exam will be given in a proctored
environment. It is each student’s
responsibility to schedule and complete each exam within the week shown on the
WebCT calendar. Please refer to the Proctoring Guidelines at: http://distance.sdstate.edu/proctor.htm for more information on taking proctored exams. It is your responsibility to find a proctor
for this course. All proctors must be approved by the instructor at least 2 weeks before
the first exam. When you’ve found an
appropriate proctor, complete the proctor form available at the above link, make
sure that the proctor agrees to the guidelines specified, ask the proctor to
sign the form, then mail the form to me at the address shown below.
Paula Kurtenbach
SDSU Computer Science Program
Admin
133, Box 2201
Brookings, SD 57007
Students
who are unable to take an exam within the specified week must notify the
instructor as soon as possible to make other arrangements. If an exam is missed without advance notice,
a make-up exam will be given with a reduction in points of 10% per day in
keeping with the Late-Grading-Procedure stated above. Exams not taken within
the week following the regular testing week will receive a zero grade.
Cheating and
Plagiarism Policy
All
students are expected to do their own work.
Students who turn in duplicate assignments will receive no more than ˝
credit for the assignment. Repeat
offenders will receive a zero grade for the assignment. Students who work together to figure out an
assignment, must each understand the solution well enough to write their own
unique program or answer. Upon discovery
of cheating/plagiarism, all prior work is subject to review and a change of
grade. Anyone caught cheating on an exam will receive a zero grade for that
exam. In addition, violation of the
academic policy could result in disciplinary action by the University. Refer to SDSU Conduct Code 01:10:25 at http://studentaffairs.sdstate.edu/JudicialAffairs/StudentCode/Chapter10.pdf
for additional information.
Freedom in Learning
Students
are responsible for learning the content of any course of study in which they
are enrolled. Under Board of Regents and
University policy, student academic performance shall be evaluated solely on an
academic basis and students should be free to take reasoned exception to the
data or views offered in any course of study.
Students who believe that an academic evaluation is unrelated to
academic standards but is related instead to judgment of their personal opinion
or conduct should first contact the instructor of the course. If the student remains unsatisfied, the
student may contact the department head and/or dean of the college which offers
the class to initiate a review of the evaluation.
Student
Accommodations:
Students
who need special accommodations should contact the instructor and the Office of
Disability Services, Room 145 Binnewies Hall, (605) 688-4504, as soon as
possible. It is the student’s
responsibility to contact the Office of Disability Services to set up necessary
accommodations. The instructor must
receive permission from the Office of Disability Services in order for any
special accommodations to be given. For
more information, please refer to: http://www3.sdstate.edu/StudentLife/DisabilityServices/Index.cfm
.
Computer / Lab Use
Students
may use the Computer Science Lab located in Administration Bldg Room 142.
|
Sunday |
Monday - Thursday |
Friday |
Saturday |
|
Noon – 10:00 pm |
8:00 am – Midnight |
8:00 am – 5:00 pm |
12:00 am – 7:00 pm |
Note: Lab hours are also posted
in ADM 142. Please note special postings for holiday hours.
Programming Note
Learning
to program computers is fun & challenging.
It can also be very frustrating.
Please start on the programming assignments early & be persistent. When you get stuck, ask specific, well-worded
questions and keep trying!
Course Outline
Following
is a list of topics and approximate schedule for the course. The WebCT calendar contains the exact
schedule for this course and takes precedence over the information listed
below.
|
Topic |
Time |
Objective |
|
Unit 1, Introduction to Computers |
1 week |
- Write, Edit, Compile, Link, and Run C++ computer programs. |
|
Unit 2, Introduction to C++ |
1.3 weeks |
- Declare and use user-defined variables and constants using the appropriate data types. - Perform standard program input and output using the keyboard and the monitor. |
|
Unit 3, Expressions and File I/O |
2 weeks |
- Write and evaluate expressions using arithmetic operators. -
Control the flow of program execution using the appropriate sequential
statements. - Process data that is stored in external text files. |
|
Unit 4, Decisions |
2 weeks |
- Write and evaluate expressions using relational and logical operators. - Control the flow of program execution using the appropriate selection statements. |
|
Mid-Term Exam, Units 1 – 4 |
.3 weeks |
- Unit 1 through Unit 4 Objectives |
|
Unit 5, Repetition |
2 weeks |
-
Control the flow of program execution using the appropriate repetition
statements. |
|
Unit 6, Functions |
2 weeks |
- Declare, define, and call user-defined functions. - Control the flow of program execution using the appropriate sequential statements. |
|
Unit 7, Arrays |
2 weeks |
- Process lists of values: defining, creating, traversing, and sorting. - Define user-defined data types using built-in types and other language constructs. |
|
Final Exam (Comprehensive) |
Finals Week |
- Unit 1 through Unit 7 Objectives |