Search


CS 110 Syllabus



Computing & Information Science I



Fall 2006



CIS Department



Saint Vincent College



General Information

  • 3 credits
  • Prerequisite: None
  • Instructor: Brother David Carlson
  • Office: Physics 201
  • Office hours:
    • Mon Wed 9:30 - 11:15 am
    • Mon Wed 1:30 - 3:00 pm
    • Tue Thurs 2:00 - 3:00 pm
    • and by appointment
  • Phone: 724-805-2416 or extension 2416 on campus
  • Email: carlsond@stvincent.edu
  • The CIS lab on the ground floor of the Physics building will be available according to a schedule that will be posted outside of the lab and under the CIS Department Web Page. The lab will usually be staffed by tutors who can assist you with this course.
  • Text: Problem Solving with C++, 6th ed., by Walter Savitch, Addison Wesley/Pearson Education (2007).
  • Supplementary material: The introductory section of Software Design Using C++ (http://html/tutorials/swd/index.html) will also be used in this course.

Description


This course provides an introduction to problem solving and beginning computer programming in C++. Topics include algorithms, program structure, variables and data types, input/output, functions and parameters, local variables, top-down design, testing and debugging, control structures, 1-dimensional arrays, and text files. Both console applications and Windows forms applications will be used. The course concentrates on procedural programming in C++, though some use of objects and classes (but not the creation of user-defined classes) is included. The study of C++ programming is continued in the follow-up course CS 111, which concentrates on object-oriented programming.

Why Take This Course


This is a required course for CIS majors, for whom it is the first course in the C++ programming sequence of CS 110, CS 111, and CS 221. It is also useful for others who wish to learn beginning C++ programming. Programming can be used to create an endless variety of software useful in all kinds of fields.

The Text


The text contains more material than can be covered in CS 110. This course covers most of chapters 1 - 8, with other topics added by the instructor. Many of the textbook topics omitted in this course are covered in CS 111, so that this text is a useful reference book to keep for that course.

Core Goals


This course contributes especially toward the following core curriculum goals, listed in order of emphasis:
  1. To form habits of ordered inquiry, logical thinking, and critical analysis
  2. To develop mathematical skills and quantitative literacy
  3. To develop effective communication skills

CIS Department Goals


This course contributes to the following departmental goals, listed in order of emphasis.
  1. The CIS graduate should demonstrate the ability to manage the complexity of a technical problem through the use of good problem solving skills and software engineering skills, as well as ethical and decision-making skills.
  2. The CIS graduate should be competent in at least three programming languages.
  3. The CIS graduate should have a broad knowledge of the field of computing.

Course Goals and Means of Assessment

  • By the end of the course the student should have a working knowledge of the course topics listed above. Tests are the main means of assessment for this goal.
  • By the end of the course the student should possess the ability to create small working programs in C++ that use the features listed under the course topics. Programming assignments allow the student to demonstrate the acquisition of this ability.

Grading and Course Policies

  • First Exam 25%
  • Second Exam 25%
  • Final Exam 25% (Tuesday, Dec 12, 8:30 - 10:30 am, as scheduled by the registrar)
  • Quizzes, Labs, and Homework 25%
Letter grades will be given using the scale found in the College Bulletin. Exams will be announced in advance and will be closed-book in nature unless otherwise specified. On closed-book exams and quizzes, only the test paper, calculators, pens, pencils, and erasers may be used. Cell phones and pagers should be turned off and put away. Calculators may be used on exams but are not to be shared among students.

Both the instructor and students are expected to do their best to produce a good class and to treat each other with respect. This includes many factors, such as listening when someone else is speaking, trying to understand what others are saying, being of assistance to others, etc. It definitely does NOT include making fun of others. On a practical level, do your best to improve your grade: read the text, attend class, do the homework and labs, ask questions, and try to answer questions in class! Computer science requires active participation and repeated practice. If you begin to feel lost, consult one of the tutors, see the instructor, or work through the difficulties with the help of another student in the course. Do not let yourself get behind. In fact, one key to producing good programs is to start early. Last-minute miracles seldom work! Note in particular that attendance is expected. Student performance is bound to deteriorate when classes are missed. In order to emphasize the importance of attendance, the policies outlined right after this paragraph will be used.
  • If the student does not attain a passing combined test/quiz average, a failing grade will be received for the course.
  • Each unexcused class absence after the first 5 results in 1.5 percentage points being deducted from the final course grade.
  • Arriving late for class or leaving early (without a proper excuse) is counted as 1/2 of an absence.
  • Missing a lab (without an acceptable excuse) is counted as 1/2 of an absence.
  • An unexcused absence from an exam results in the failure of the course.
  • Unexcused absence from class results in a grade of zero for any quiz, lab, or other activity done in that class.
  • Unexcused absence from more than 1/3 of the semester's classes results in the failure of the course.
  • Attendance is used to decide borderline grades at the end of the semester.
  • Late lab work or homework is not accepted unless resulting from an excused absence.
  • Written documentation (such as a note from the health center, a doctor's office, or coach) is normally required for an absence to be excused. Bring a copy of such a note to give to your instructor when class or lab must be missed. In special circumstances, check with your instructor.
  • At the end of the semester, the lowest grade in the homework/quiz/lab category will be dropped. This is primarily to help students who have been ill and had to miss some class time.
Make-up exams are strongly discouraged. If possible, take the regularly scheduled exam. For an excused absence for a significant reason, the instructor may agree to give a make-up. Whenever possible, see your instructor ahead of time if you must miss an exam. Normally some type of written documentation is required (such as a note from the coach or doctor). Students participating in sports are required to provide the instructor at the start of the semester with a schedule of games that might conflict with class. If the documentation or reason for missing an exam is poor, the student can count on receiving a more difficult exam, if one is given at all! Do ask about a makeup if you have a good reason to miss an exam, as it is understood that illnesses and other complications do happen.

Tests and quizzes will ask critical thinking questions that require careful analysis, explanation, and conclusions. For example, you might be presented with a section of a program and asked to trace what it produces, to write the documentation describing at a high level what this section does, or to give an alternative implementation of this section. You might also be asked to write a section of code that carries out a particular task. A few multiple choice and true/false questions are also included. Labs involve a lot of hands-on activity to try out a certain aspects of programming, but on a smaller scale than what is usually needed for programming assignments. In this course you will be asked to write programs that are about 1 to 5 pages in length, including well-written documentation. In the labs, much of the code may be written for you, so that your job is to fix errors, to make modifications, etc. There will be about 10 programming assignments in this course and about 12 labs.

Homework usually consists of programming assignments. These normally require careful planning and the use of several hours of out-of-class time. Plan to have the program done early so that there will be time to test it and to fix the problems that testing usually reveals. Engineering a program requires a development process that cannot normally be done at one sitting. Allot several hours over the course of several days to develop your program. Note that it nearly always takes longer than you expect! Some in-class labs or exercises may be used that count the same as a regular homework assignment or quiz. Some labs may be ungraded. Students may be assigned to small groups for the purpose of doing some of the in-class exercises and homework assignments. Other homework assignments will be given that must be done separately by each individual. The group homework is given to allow students to learn from each other, to enable the creation of larger and more complex software, and to provide practice at a cooperative project like those demanded by many job situations. Further information about any group assignments will be provided during the course.

Every programming assignment should list all sources that contributed to the solution. This would include the individual student (on an individual assignment) or the students assigned to a group (in a group assignment). It may also include the instructor, a tutor that was consulted, a reference book, a web site, etc. You may consult other students who are not part of your group as long as your question is small in scope and that you list the name of the student consulted at the top of your program. "Small in scope" excludes showing another student your entire program, or seeing that person's program, or working out the design of the whole program together. Sharing on that larger scale often amounts to one person copying the mistakes of another or getting a free ride on the efforts of another. A good rule of thumb is not to look at more than 1 screen of another person's code. Anyone who needs help on problems of larger scope should consult the tutors and/or the instructor. Further discussion of collaboration versus plagiarism will be done in class to clarify the matter.

Intellectual honesty is important at Saint Vincent College. Attempts to pass off the work of another (or group work) as one's own will result in action appropriate to the seriousness of the situation. All cases of apparent intellectual dishonesty are referred to the college administration. In this course, students are expected to do entirely their own work on the exams, quizzes, and individual homeworks. Small group homework should not include any signficant amount of work from a different group.

Assignments are due anytime on the date given and are normally turned in electronically by placing a copy in one's hw110 mapped network drive. Exceptions to these deadlines are only granted for serious reasons and normally require written documentation of the reasons.

Be sure to read and follow the CIS Department Policies, available under the CIS Department Web Page. (This statement covers the proper use of departmental computing facilities, etc.) In addition, read the Regulations section of the College Bulletin (which covers such things as grading, academic honesty, etc.) as well as the Student Handbook.

Students with disabilities who require academic accomodations and support services should please consult Mrs. Sandy Quinlivan. You may contact her by telephone (724-805-2371), SVC email, or by scheduling an appointment in Academic Affairs (located directly above the Post Office). Reasonable accomodations do not alter the essential elements of any courses, programs, or activities.

If the instructor needs to cancel class, every effort will be made to post a note to this effect on the course web page and on the door to the classroom. If this cannot be done, as a last resort the instructor's phone greeting will be changed to indicate that class is cancelled.



Maintained by: Br. David Carlson
Last updated: January 11, 2007
Disclaimer