SYLLABUS

CS 161: Introduction to Computer Science 1

Introduction to Programming and Problem Solving

 

Fall 2010

 

Prerequisite:

None

 

 

Instructor:

Karla Steinbrugge Fant

E-mail:

karlaf@cs.pdx.edu

Office hours:

Tuesday and Thursday 8:30-9:30am 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 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 video taped 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 will be posted online – on both my website and the new online system called Desire 2 Learn (D2L for short), so it is important to login frequently. We also have a class web site CS161 Web Site where assignments are posted. Duplicate copies will also be available on the Desire 2 Learn website.

 

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.      Frequent the CS161’s  Home page: CS161 Web Site

a.       For announcements

b.      TA office hours

c.       Handouts and Assignments

d.      Course Lecture Notes and Course Slides

 

2.      Weekly login to Desire 2 Learn: http://www.my.pdx.edu

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

b.      Weekly participate in online discussions.

c.       Post questions you might have here – for class discussion.

d.      Check your grades

e.       Use the calendar tool to keep track of when assignments are due.

 

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, make sure to email Karla of your plans for the exam. An alternate evening testing time will be announced during the term. These are usually offered in the evening.

b.      Exams can only be taken at the testing center if there is an emergency situation (testing@pdx.edu) such as illness. 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.

 

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. Some homework will be written homework others will be programs.

 

• 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. 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 emailed homeworks

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.

 

Policies:

It is against department policy to give final exams early (no exceptions!). Exams will all be closed book and closed note exams. All makeup exams will be proctored through the testing services center and cost students a fee ($10). All makeup exams must be pre-arranged with your Instructor!

 

• 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 F for the course and a letter will be sent to the head of the CS Department.  Note that the instructor may ask any student to explain his/her homework verbally.

 

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.

 

• 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!