CSCI 110 Syllabus - Spring 2008

Instructor   Dr. Bonnie McVey 

Office: Cofrin 310 Phone: 920.403.3471
Office Hours: M 2-3, WF 9-10, TTh 2-3
                        and by appointment
Email: bonnie.mcvey@snc.edu

Course Meetings 

Lecture: MTThF, 10 – 10:50am, Cofrin 203
Labs: Tuesday, 11 - 1pm, Cofrin 108

Required Text

Problem Solving, Abstraction, & Design Using C++, 5th Edition, Friedman and Koffman, Addison Wesley, 2007.

Required Background

Although no prior programming experience is necessary, the ability to manipulate files and folders in the Windows environment is expected (A brief review of this will be given in Lab 1). In addition, MT 114 or MT 115 is a prerequisite for the course. It is important to note that students who are successful in Calculus I are more likely to experience success in programming than those who are not. The skills needed to think logically and provide precise solutions to quantitative problems are required in mathematics and computer science.

Course Objectives

At the completion of this course, you will be able to make the computer solve problems for you by giving it precise instructions written in the C++ programming language. You will be amazed at what you can make a computer do after only one semester of programming! Programs to calculate profits and losses, to maintain statistics of your favorite team, and to play simple games will soon be within reach.

As concepts and their implementation in C++ are presented, you will learn how to solve more and more complex problems. These concepts include computer terminology, structured programming, use of conditionals and repetition, and methods for storing, organizing and manipulating data. You will learn to analyze problems, think logically and develop a plan (algorithm) to solve the problem, then communicate this plan to the computer using C++. This process of programming can be fun, frustrating, exhilarating, exhausting, satisfying and stimulating, all at the same time, and I look forward to sharing it with you.

Schedule (approximate)

Here is a list of topics we will cover as well as references to them in our text. Please note that the schedule is approximate and that the material covered on each exam may be adjusted.

Topic Sections
Intro to Computer Programming Chapter 1
Using C++ and Visual Studio .NET 2005 Appendix F
Datatypes, I/O, Assignments Chapter 2, Sections 3.7, 7.1-3, Appendices A, B, D
Functions Sections 3.1-3.6, 3.8, 6.1-6.5, 6.7, 7.3, Appendix C
Review and Exam 1  
Conditionals Chapter 4, Section 7.4
Repetition Chapter 5
Streams and Files Chapter 8
Review and Exam 2  
Arrays Sections 9.1-9.4, 9.9
Sorting and Searching Section 9.5
Structs Sections 9.7-9.8
Review and Exam 3  
Arrays of Struct Sections 11.2
Multidimensional Arrays Section 11.1
Course Review and Final Exam Cumulative Final

Grading 

Midterm Exams (3) 50% of course grade
Comprehensive Final Exam 20% of course grade
Labs, Homework, Programs, Quizzes 30% of course grade
Cutoffs: 93 - A, 90 - AB, 83 - B, 80 - BC, 70 - C, 68 - CD, 60 - D
NOTE:If the average of your four exam scores is below 65, then your Labs, Homework, Programs, and Quizzes cannot be used to increase your course grade.

Course Documents

Check website http://home.snc.edu/bonnie.mcvey/cs110/ often for course news, assignments, hints, corrections, solutions, etc

Policies

  1. Attendance is expected. Pop quizzes and in-class assignments may be given and cannot be made up. When possible, inform me before class or lab that you will not be there. If you miss a class, you are responsible for all information from the class. You may miss one lab and still hand-in the lab report for credit.
  2. Labs meet each week and you are required to attend. If you finish early, you may request permission to leave. Arriving more than 10 minutes late for lab is considered being absent. Labs are an essential part of this course and are designed to help you explore important concepts with C++. Work carefully and attentively to get the most from the lab. Weekly lab reports will be turned in at the beginning of lab on Wednesday of each week.
  3. All assignments are due at the beginning of class on the day due unless otherwise stated. A forgotten assignment (an assignment is not forgotten if you are not in class!) may be handed in within 30 minutes after class to my office (COF 310). No credit will be given for late assignments other than programming assignments as described below.
  4. There will be approximately 7 programming assignments this semester worth 100 points each. Programs that do not compile will receive little or no credit. All programming assignments must adhere to specified programming standards. Programs may be submitted up to 24 hours after the required time; however, your grade will be reduced by 20%.
  5. SNC ACADEMIC HONOR CODE (adapted from dcp) I actively enforce the Academic Honor Code. By your registration in this course, you agree to abide by the Academic Honor Code. All materials handed in for grading are subject to the code. Each document must bear your signature after the label Honor Code Signature. It is understood that your signature means that you followed the SNC Academic Honor Code for that assignment. Any document that does not contain your signature is considered not submitted. Below are some guidelines for following the honor code:
    1. No outside sources or references are allowed on exams given "in-class."
    2. Research papers, programs, homework, lab reports must fully document another's ideas and works.
    3. Programming can be a social activity. Indeed, industry often demands that project teams collaborate. You may share your ideas on assignments, but you may not share program code. For example, if Nike and Sony (my cats) work together on part of an assignment, then both must acknowledge this in the documentation for that program. If Nike asks Sony for help and Sony complies, then it is Sony's responsiblity to make sure that Nike understands the problem and its solution. It is Nike's responsibility to acknowledge Sony's assistance in the program documentation. Neither grade will be affected.
    4. Students must do their own work on their own directory and flash drive. You are in violation of the Academic Honor Code if you share your own or copy another's program code or parts of a program in any form (printed, screen, file, etc). Never leave your work on the disk drives of lab machines or forget to pick up your printouts.
    5. Although working with a partner during a lab exercise is encouraged, sharing information on the written report is considered cheating; that is, the written report is an individual effort.
    6. Discussing written assignments with others is often a good experience since there are often many solutions to one problem, but again, the written report is an individual effort. Writing your solutions to the assignment yourself not only helps you more fully understand and but also keeps you from violating the SNC Academic Honor Code.
    7. If in doubt, don't!

Important Dates 

January 24 Drop/Add Deadline (Thursday)
February 18 Exam 1, 7-9pm, COF ? (Monday)
February 29 Mid-Term Reports (Friday)
March 10 Exam 2, 7-9pm, COF ?? (Monday)
March 15 - 24 Spring/Easter Break - No Class
April 1 Advisement Day - No Class or Lab (Tuesday)
April 3 Last Day for Course Withdrawal
April 9 Advisement Day (Wednesday)
April 16 Exam 3, 7-9pm, COF ?? (Wednesday)
May 2 Last Day of Class
May 8 Final Exam, 2:15-4:15pm (Thursday)

Other

In keeping with the St. Norbert College mission to help students develop their full potential, and in compliance with the Americans with Disabilities Act, the College provides supportive services to students with disabilities. For enquiries and further details, please visit the Academic Support Services Office located on the lower level of the John Minahan Science Building (JMS) or contact Karen Goode-Bartholomew, Coordinator of Services to Students with Disabilities (Phone: 403-1326), or visit the website www.snc.edu/academicsupport/disabilities.html.

Read your textbook, ask questions in class and in office hours, work hard. Using a computer to solve problems is both fun and frustrating and there is no substitute for practice. It is also quite different from other areas of study due to the necessity of adhering to every detail of the language, so start assignments early. Please know that I want you to do well and that all of us involved in CS110 are prepared to help you do so but the choice to succeed is made by you. Enjoy!