CSci 1901: Labs and Homeworks
Much of the learning will be done in 2-hour
weekly lab meetings. Each week, you will work with another student
to write programs that apply concepts covered in lectures
to solve a variety of problems. In addition to the labs, you will
be given homeworks, that you will work on individually.
List of Labs
- Lab 1: Intro to Unix and STk, January 18.
- Lab 2: Writing Procedures, January 25.
- Lab 3: RSA Encryption, February 1.
- Lab 4: More RSA Encryption, February 8.
- Lab 5: Review for Midterm 1, February 15.
- Lab 6: Trees,
February 22.
- Lab 7: Ordered Lists and Binary Trees,
March 1.
- Lab 8: Multiple Representations of Data,
March 8.
- Lab 9: Local State and Hilbert Space Filling
Curves2, March 22.
- Lab 10: Review for Midterm 2, March 29.
- Lab 11: Tables, April 5.
- Lab 12: Dance Competition, April 12.
A list of the AIBO commands and
a short description on how to use the agenda
- Lab 13 : Tic-Tac-Toe in Python, April 19.
- Lab 14 : Graphical Objects in Python, April 26.
- Lab 15 : Practice Final --
Solution for Practice Final
List of Homeworks
- Homework 1: due Monday February 5.
-- Solution for Homework 1
- Homework 2: due Monday February 12.
-- Solution for Homework 2
- Homework 3: due Monday March 19.
-- Solution for Homework 3
- Homework 4: due Thursday April 25
-- Solution for Homework 4
- Homework 5: due Thursday May 3
-- Solution for Homework 5
Bonus questions. The deadline for
submsission is the last day of class, Friday May 4.
Quizzes and exams
Policy on Labs
The general format for the labs is as follows:
- Typically you will work with one other student.
Each lab is decomposed into several steps that you will have graded
by your lab instructor as they are completed. In most cases, you
should be able to finish the entire lab during the 2-hour period,
but there might be steps remaining for you to work on after the
conclusion of the formal lab time.
- Labs are graded on a step-by-step basis.
Any steps not completed in the lab can be done on your own time
with your lab partner and graded by
your TA before the beginning of the next lab meeting.
All grading must be done in person with a
TA unless another arrangement has been announced or
there are specific instructions as part of the lab writeup.
- Grading is done on correctness, completeness, and style.
Correctness and completeness refer to how well the program
works. Style includes good design, readability (indentations,
descriptive names for variables and procedures, and appropriate use of
blank spaces), and useful comments. You are expected to comment
(input, output, assumptions, etc. -- will be discussed in
class) your procedures.
- In order to do well on the exams, you
need to learn programming and problem solving skills that are
developed by attending class, doing the lab work and the homeworks.
As a rule of thumb, your performance
will largely be determined by the amount of effort you put in on the
labs and homeworks(once you have read the text and attended lecture).
- Utilize the lab instructors. Each lab section has at least
lab instructors that are there to help you as well as grade
your lab steps as they are completed. While the lab instructors will
not do your work for you, they will help you and direct you in the
proper direction.
- For the labs that are completed on your own time, you may
use the University public computing labs or your own computer.
If you use your own computer, the work you submit for grading must
run on the University computers because that is where they will be
run and graded. So, if you work on the labs elsewhere, make sure
you try your code on the University machines to be sure that it
runs fine.
Copyright: © 2000-2007 by the Regents of the University
of Minnesota
Department of Computer Science and
Engineering. All rights reserved.
Comments to: Maria Gini
Changes and corrections are in red.