CSC 171
Most part of this page is based on the web page of CSC 171 offered in Fall 2004.
What
is this course?
CSC 171, Introduction
to Program, uses Java to teach programming. The substance of this course
is programming, not Java. When you finish this course, you should be able
to take a description of what a computer should do and write a program
that will make the computer do it. Learning to program is hard. This course
may take more time outside of class than any other course you have ever
taken. Students who know how to program may not find the class as hard,
but these are the exceptions, not the norm. You will need to be able to
program well in order to handle CSC 172: Data Structures. This course
covers a lot of material, but all of it will be necessary for you to continue
into Data Structures.
What
you will need...
Book
The required text
for this course is "Java Software Solutions (5th edition)
-- John Lewis and William Loftus. Make sure you get the 5th edition book. The sections you are to read in these books are
listed next in the schedule next to the date for each class. You should
have read these sections before you come to class. You
may wish to read them again after class, but you should read them at
least once before coming to class.
Personnel
The instructor for
this class Ted Pawlicki.
There will also be one Graduate Teaching Assistant, ten Workshop Leaders
and Undergraduate Lab Teaching Assistants for this course. We are all
very happy to help you with your assignments and to answer questions you
may have about the reading.
Grading
Your grade will be
calculated based upon Exams, Projects, Workshops and Labs. It is your
responsibility to ensure that your grades are recorded correctly, specifically
for lab assignments. You should check that your TA has correctly recorded
your grades. Remember that your grades are maintained by the Lab you are in so if you
have any questions regarding your grade go and see the lab TA first.
26 Labs 25%
4 Projects 40%
10 Workshop Quizes 10% (5% attendance and 10% quiz)
2 Midterm Exams 20%
1 Final Exam 20%
Exams
Exams will account
for 40% of the grade. There will be two mid-term exams and a final exam
will be given during finals week. Please see the course
schedule for the exact dates. All exams are "closed Book" and "closed
Notes". You are also not permitted to use Computers, Calculators, Cell
Phones, Beepers, or any other Electronic device. The exams account for
a total of 40% of a student's grade as follows. Midterm1 - 10% Midterm2
- 10% Final Exam - 20%
Programming Projects
Projects will account
for 20% of the grade. Four projects will be
assigned during the semester. Please see the course
schedule for the exact dates. All programming assignments are to be
turned in using the turn-in script. No credit will be given for late assignments.
The 4 projects will account for a total of 20% of a student's grade as
follows. Each project will be worth 5% of your final grade.
Labs
Lab work will account
for 25% of the grade. Lab assignments will be given over the course of
the semester. Each lab assignment must be demonstrated in Lab.
Unless otherwise specified no hard copy must be turned in. Labs are due
by the end of you last registered lab period on the week assigned. No
credit will be given for late lab assignments. Collaboration with other
students is encouraged during the lab sessions. Collaboration includes
open discussion and use of handwritten notes. Wholesale copying of programs,
by electronic or any other means, is strictly
forbidden.
Turning in Projects
The exact time when
programs are due will vary from project to project. See the individual
project specification for appropriate due date. Programs that are late
or that do not compile will be given a zero. The best way to succeed
at this course is to start programming as soon as you can. If you get
the program done before the deadline, turn it in and start on another.
Attendance
Attendance is required
during the entire lecture period and you are expected to have completed
the assigned reading before coming to class. Lectures are 1 hour and 15
minutes. Lab and Workshop attendance is also mandatory. Each lab is also 1 hour and
15 minutes. Attendance will affect your grade.
Academic Honesty
Cheating is bad. Fortunately,
few students do it. Unfortunately, this also means we must make a statement
regarding cheating in this course. If you do not cheat, you have nothing
to worry about. If you cheat, you will have something to worry about.
All students caught cheating in this course WILL be reported to the Academic
Honesty board. Academic Honesty means giving credit to the sources of
your ideas. This means that if you receive help from people, you should
acknowledge that help. Getting help is good, you should just make sure
that you acknowledge that help. The following activities are consider
cheating in this course. If you do any of the following activities (but
not limited to these) it will result in a report to the Academic Honesty
Board. Turning in a program that includes parts of someone else's program
is cheating. Copying a program you find in the trash is cheating. Turning
in your roommate's or friend's program as your own is cheating. Copying
the program listing of the person sitting next to you in lab is cheating.
Adding pieces of code that people email you is cheating. Looking at someone
else's program to ``get ideas'' is cheating. Getting parts or all of your
program from any World Wide Web site or any source other than your own
mind is cheating. Giving a program to someone else to turn in as their
own is cheating. Turning in your program as someone else's is cheating.
Giving your program for someone else to ``study'' is cheating. Copying
answers in a test or quiz is cheating. Looking over someone's shoulder
and writing the answers they are putting down on your own test or quiz
is cheating. Taking a test or quiz for someone else is cheating. Having
someone else take a test or quiz for you is cheating.
The University Policy on Academic Honesty can be found here
|