SYLLABUS

CS 161: Introduction to Computer Science 1

Introduction to Programming and Problem Solving

 

Winter 2011

 

Prerequisite:

None

 

 

Instructor:

Karla Steinbrugge Fant

E-mail:

karlaf@cs.pdx.edu

Office hours:

Monday and Wednesday 11-11:50 in FAB 120-19 or by appointment

 

 

Texts:

Beginning C++ Through Game Programming,

By Michael Dawson

 

 

 

 

Handouts:

All handouts, course outline, and homework assignments can be retrieved from the web using Desire 2 Learn (D2L) http://d2l.pdx.edu and also at:

 

http://www.cs.pdx.edu/~karlaf

 

 

Disabilities:

If you have a disability and are in need of academic

 

accommodations, please notify the instructor immediately to arrange needed support

 

 

 

CS161 can be viewed Online…what does that mean?

 

This term there are two sections of CS161. One is an “online” section and the other is an “in-class” section. The only difference between these sections is that the in-class students are guaranteed to have a seat available. Students in the online section must watch the class remotely, streamed on the web. IT IS VERY IMPORTANT that if you are taking the class as “online” that you watch two lectures a week starting on the first week. Missing lectures may mean missing vital information!

 

One of the advantages of taking CS161 this term is that it can be viewed online by all students. This means that regardless of which section you have signed up for you can watch the class remotely. Some students use this feature to review for the exams or re-watch material. The class lectures are “streamed” this term, which means that they are videotaped and will be available for viewing approx. 24 hours after the in-class lectures have occurred.

 

To account for the fact that each of us may be watching the class at different times, all announcements and course materials will be posted on a new online system called Desire 2 Learn (D2L), so it is important to login frequently. D2L will is being adopted for the University and will be for all online/hybrid classes by Spring 2011. We also have a class web site CS161 Web Site where extra copies of the assignments and lecture materials are posted if you are unable at times to login to D2L.

 

All course materials (except exams and textbooks) are available electronically and homework can be submitted entirely electronically, so there is no requirement to come on campus to turn in your work! However, the on-campus labs have tutors that can help with the assignments – so you might consider scheduling some time to work at PSU. There will be online discussions to encourage progress; these are a vital part of your grade. The midterm and final exam may be either taken in the classroom or at the testing center at PSU. Here are the links you will need:

 

1.      Frequently login to Desire 2 Learn: http://www.my.pdx.edu or directly at http://d2l.pdx.edu

a.       Your password should be the same as your Odin password.

b.      Read announcements

c.       Weekly participate in graded online discussions.

d.      Post questions 

e.       Check your grades

f.        Use the calendar or checklists to keep track of when assignments are due.

g.       Obtain links to watch the course lectures

 

2.      Use the CS161’s  Home page if D2L is not available: CS161 Web Site

a.       TA office hours

b.      Handouts and Assignments

c.       Course Lecture Notes and Course Slides

 

 

3.      Weekly lectures can be seen from links on both our website and Desire 2 Learn

 

4.      Plan to take exams in class – alternative exam times will be posted prior to the examinations taking place

a.       If you are signed up for the “online” section of CS161 (Section 002), make sure to email Karla of your plans for the exam. An alternate testing time will be announced during the term once PSU responds with classroom support.

b.      Exams can only be taken at the testing center if there is an emergency situation (testing@pdx.edu) or for special accommodations. Exams taken at the testing center will cost the student approx $10, for the testing center’s services.

 

 

Questions?

If you have questions, the best approach is to post messages on Desire 2 Learn or send email directly to karlaf@cs.pdx.edu. Make sure to include your name and the class you are enrolled in…otherwise we may not be able to answer your questions. Office hours listed on this syllabus are also highly recommended. When coming to office hours, please make sure to bring a hardcopy of your homework!

 

Electronic mail works the best if you have a question that you encounter as you work on the homework assignments. Please be advised that questions should be clearly formulated and it should be clear from the question that you have attempted to solve the problem on your own. Do not, unless explicitly asked by the Instructor, simply email your homework and expect a response! Instead, talk about what problems you are encountering and what you have done to make progress. Make sure to provide your full name and indicate which class you are in when sending a message.

 

Be careful when seeking help from others. You should seek help from (a) instructor, (b) TA’s, and (c) Tutors. We are here to work with you – either in person or remotely. But, beyond this be careful. Do not to share your code with others! Never post your code in the D2L discussions, the Web, social networking sites, or the web. Never give your assignments to any other PSU students, regardless of their situation. Never email your code to anyone except your instructor. Performing any of these actions will result in a ZERO grade on that assignment.

 

If you have administrative questions and need to talk directly with the Instructor, send mail to: karlaf@cs.pdx.edu

 

 

Is CS161 the right class for me?

·        CS161 is designed for students who have never programmed before. There are no pre-requisites for this class.

·        This is not a refresher class!

·        If you have already programmed in a high level programming language in the past, then you most likely should sign up for CS162.

 

·        You will be ready for CS162 if you can answer the following questions with ease (in any programming language):

1.      Written complete programs previously on your own in a high level programming language

2.      Write a conditional expression (if) to determine if someone’s age is between 13 and 21 (exclusive)

3.      Using a loop, sum all of the whole numbers stored in an array (assume there are “length” numbers stored in the array)

4.      Create a function that finds the largest number in an array. Use arguments and returned values in your solution.

5.      Create a function that will compare two names and display them in alphabetical order

 

 

Course Description:

Introduction to fundamental concepts of computer science. Problem solving, algorithm and program design, data types, loops, control structures, subprograms, and arrays. Learn to write programs in a high level programming language. Surveys current social and ethical aspects of computer science.

 

Goals:

To introduce students to the fundamental concepts of computing. Problem solving, the design of algorithms for solutions, and the translation of tested algorithms into the grammar of a high-level computer language are emphasized. Students are encouraged to develop a consistent programming style and a systematic method of internal program documentation.

 

This course introduces the software life cycle along with the goals of systems design; reliable, modifiable, understandable, and efficient program development is emphasized. Computer ethics are introduced with an analysis of the nature and social impact of computer technology; this is emphasized using example cases and integrating ethical issues into at least one project and exams. Students will be introduced to the UNIX environment for subsequent CS courses.

 

Topics:

Solving Problems with Computers (8 hrs)

Algorithms – What they are and how to write them (4 hours)

Learn how to login and enter programs (2 hrs)

Be introduced to high level programming languages (4 hours)

Understand data types, variables, conditionals, loops, functions, and arrays (16 hours)     

Survey of social and ethical aspects (2 hrs)      

Learn about software design methodologies (4 hours)

 

 

 

Projects/Homework:

• 6 homework assignments to be turned in via email on the specified due date, emailed to your instructor.

 

• Most homework consists of both written portions and programming portions. The programming portion MUST be answered to get a passing grade on the homework.

 

• These comprise 35% of your grade.

 

• For all programs that you write, 20% of your grade is based on the program style, comments, and documentation. A style sheet will be developed in class which must be followed to get this 20%.

 

• NO LATE ASSIGNMENTS will be accepted. There will be situations where I will announce changes to the due dates in class and posted on the web site.

                                                                             

• Partial credit will be given for incomplete work. This means that it is better to turn in something, even if it doesn’t work. Remember, late assignments are not accepted! If you find you are continually having problems meeting the due dates, make an appointment.

 

On-line Discussions

• Desire 2 Learn will be used in this class to facilitate online discussions used to help students become familiar and master the concepts of problem solving and program design. It is a new online service that is being rolled out this year and we are participating in the pilot program. We will use this forum to create algorithms and discuss some of the syntax learned in class. Students are expected to login to Desire 2 Learn every week and participate! Your participation is graded; it must be (a) meaningful, (b) instigate other discussion, (c) and be related to the class subject matter. Participation means that you can ask questions, answer other students’ questions, or answer the discussion questions. It all counts! Simply providing the entire solution and/or code will not promote a meaningful discussion! Also, logging in right before the discussion question is closed for the first time will not instigate other discussion and will be graded accordingly!

 

 

 

Grading and Examinations:

• Grades are based on the following percentages:

Individual Homework Assignments

35%

6 homeworks turned in via D2L’s Dropbox

Participate Weekly with Online Discussions

5%

Using Desire 2 Learn

Midterm

25%

In class or Proctored

Comprehensive Final

35%

In class or Proctored

 

Minimum Grade Requirements:

For a C or better in this class, you must have a grade of 65% or better on the Homework assignments and a grade of 65% or better on the Examinations. In addition, students must turn in each homework assignment to pass this class. Students must turn in the programming portion for each homework assignment to get a passing grade.

 

Policies:

EXAMS:  See the instructor in advance if you have a midterm conflict; the final is given only at the scheduled time. Exam times will be made available for online students. These times will be announced in class and posted on the web. In emergency situations, makeup exams can be proctored through the testing services center and cost students a fee ($10). To make arrangements with the testing center you must first get authorization from your teacher, then set up an appointment with the testing center, which then is followed by communicating the date/time of the exam to your teacher so that they can get the testing center an exam. Do not assume that the testing center will be available to be used (except in emergency situations).

 

• Remember, assignments are due on the due date (anytime during the day/evening). Failure to turn assignments in on time will result in a zero for that assignment. Homework will not be accepted after the last day of class.

 

• CHEATING:  Each student is expected to submit only original work. Any person who violates these requirements will receive a grade of zero for an assignment which based on the above grade requirements will result in an F for the course. A letter will be sent to the head of the CS Department documenting the situation. 

 

Students will receive a zero on an assignment if any of the following activities take place:

1.      Student accepts an assignment and/or program from another student

2.      Student supplies an assignment and/or program to another student

3.      Student posts the assignment and/or program on the web, social networking site, or D2L discussions

4.      Student shares their password with another student at PSU giving that student access to their assignments and/or programs

5.      Students work together on assignments and turn in the same and/or similar assignments.

6.      Student turns in work that was obtained from other sources such as the web, friends, tutors or TA’s.

7.      Student leaves work available for others to copy from

 

The work you submit must be your own. It is not acceptable to hand in assignments in which substantial amounts of the material was done by someone else. You must be especially careful that in the process of discussing problems with other students that they do not inadvertently end up using your work. In such an event, all students involved will receive a zero on that assignment.

 

• GRADING will be done near 90% (A), 80% (B), and 65% (C). However, exact break points for grades will depend upon the overall class results. For P/NP grade option, a "pass" grade requires an overall grade of at least a C.

 

INCOMPLETES will be given only when a minimal amount of work remains to be completed, only for a valid reason and only for a fixed time period. Do not expect an incomplete in this class.

 

 

Try to Exceed my Expectations!