CS 121- 02 HOME PAGE

Spring 2008

Last updated Mar 27, 2008


CS 121: Computer Science I
Instructor: Dr. Mary Ellen Weisskopf

Email: weisskop@cs.uah.edu                                                    Office: Technology Hall, N300A

Phone number: (256) 824-6306                                                 Class meets: TR 12:45 – 2:05, TH N306

Office Hours: W 2:00 – 4:00, TR 2:15 – 3:30 (or by appointment)  Final exam:  April 29, 2008, 11:30 – 2:00

Prerequisities: CS 102 or 103, or equivalent; MA 112

Textbook: Programming and Problem Solving with C++(4th edition), Nell Dale and Chip Weems

           


CS 121 Catalog Description:  Review of hardware and software components of computer systems.  Review of problem solving techniques and algorithm development.  Principles of software design, implementation, and testing.  Introduction to object-oriented design and the C++ programming language.  Extensive programming assignments to provide experience in the application of design and implementation principles.


Spring 2008:  

 

Consult the syllabus for information about class policies, grading, etc.  The schedule contains reading assignments, program due dates, tests, holidays, and other dates of interest.


 ANNOUNCEMENTS:  Check this section regularly.  I will post notes and reminders here. I will also use the announcement page to answer questions of general interest.

1.       4/24/2008:  Here is a study guide to help you prepare for the final exam next week.

2.       3/27/2008:  A typo in the specification file has been corrected.  If you downloaded it before 11:00 a.m. today, you should get the updated version.

3.       3/26/2008:  Here’s a link to a partial specification file for the class you will build for the final program. Be sure to save it with a .h extension.
COMMENTS ABOUT THE ROBOT PROGRAM:
Use the same values for velocity and power.
Test your program by compiling and running it in the lab.  You will get to try it on the robot during your 30-minute test period.
Submit a listing in class, with both team-members’ names.

4.       3/24/2008: See this page for a revised schedule.

5.       3/7/2008:  Program 3 grades have been recorded and you can pick your assignment up in the CS office.  I will bring them all to class Tuesday. On Tuesday I will also announce teams for the robot programming project.

6.       3/5/2008:  Here is the study guide for Test 2, scheduled for 3/13/08. 

7.       3/3/2008:  Here are several important announcements:

8.       2/21/2008:  Here is the class handout on parameters

9.       2/19/2008:  Download data file for Program 3. Notes about Program 2 are also available here.
There is a typo in the 3rd programming assignment.  On page 3 of the handout, under the heading NOTE, is a code segment that shows you how to seed the random number generator.  The third line should read “
srand(newSeed); “.  In the handout, I inadvertently left off the ‘s’ from the function name.

10.   2/6/2008: Here are the answers to the Pop Test, as promised:
Multiple Choice: 1-c (see page 54); 2-a (see “comparing strings”, pp 198-199); 3-5 (page 108); 4-c (“declaring arrays”, pp 590-591)
Fill in the blank: 1: 10, 9 (pp 590-591); 2: compiler (page10).

11.   2/4/2008:  Study Guide For Test1.  (May be revised as time goes on) We’ll review in class tomorrow so be prepared to ask questions.

12.   1/30/2008:  Here is a text file containing a shell program that will be the basis of your next programming assignment.  It consists of a main function that declares an array and initializes it to a set of integer values.  Then it calls a Bubble Sort function to sort the values (arrange them in ascending order).  Output statements show the progress of the sorting algorithm.  You can run the program as is to see Bubble Sort in action.  Later you will replace the main function with one you write yourself.

13.   1/29/2008: Program 1 is due Thursday at the beginning of class.  If not submitted by the time the lecture starts, it will be counted late. Don’t forget to submit a hard copy of your program and the grade sheet from the assignment.  If you’ve lost the grade sheet, download a copy here. Here’s  a link to a little program that shows how to find the largest element in an array and the sum of the elements in an array.  If you want to execute the file, be sure to change its extension to .cpp.

14.   1/9/2008:  Here are power point slides for the next couple of lectures.  Tomorrow we will discuss the homework, if there are any questions.  I will hand out & discuss the second part of the homework assignment, which is a short program.  Homework 1B will be due 1/16.

15.   12/11/2007:  We will use Microsoft Visual C++ .NET 2005. Find out how to get a copy of the software here: http://www.cs.uah.edu/software.html. 
Lecture notes for the first class are available.


How to Succeed in This Course

Programming in any language is difficult; C++ can be especially challenging! I want to help you learn but I can’t do it without your cooperation.  Here are some things you can to do improve your chances for success:

1.        Please make sure that you come to class prepared: read the assigned textbook chapter; work through code examples and make sure you understand them. Pay attention to definitions and syntax diagrams. 

2.        Study the Quick Check and Exam Prep questions at the end of the chapter. You can decide how much self-review you need.   I recommend that you err by doing more rather than less! TIP: Pop tests, quizzes and homework or programming assignments will be very similar.

3.        Do all the assignments. The only way to learn how to program is to write programs!  Reading the book and coming to lectures will get you ready to program but unless you practice you will never master the subject.

4.        Ask questions.  If you don’t understand something I say in class, stop me and ask me before you get lost. Usually if you don’t understand something, other people will also be confused.  They’ll be glad you asked!


Study Suggestions


Policies for the Final Exam (and all other tests as well)

Here is a summary of the CS exam policies

  1. Do your own work
  2. Talk only to the instructor
  3. Turn in your exam if you leave the classroom
  4. Use only paper provided by the instructor
  5. Sit in assigned seat if instructor requires
  6. No books, calculators, etc. on desk unless instructor approves
  7. Exam must be taken at the scheduled time unless you have permission from the instructor in advance to reschedule.


 



Created by Dr. Mary E. Weisskopf

Email: weisskop@cs.uah.edu