Você está na página 1de 12

Course Syllabus

Course Syllabus

Special Message: The 2nd program is now due on Tuesday, June 19. All regrades
for test 1 have been posted on WebCT. TA information is given below.

Course Number: CS 1337

Course Title: Computer Science I

Credit Hours: 3

Tutoring Lab Hours: click here

WebCTv6: click here to go to WebCTv6 (this will have your scores as well as
programs done in class)

Instructor: Tim Farage


Office: ECSS 3.606
Office Phone: 972-883-4836
E-Mail: tfarage@utdallas.edu
Web Site: www.utdallas.edu/~tfarage

Office Hours: Tuesday and Thursday from 3:00 - 6:00 P.M. in ECSS 3.606 by
appointment
(Will do both course advising and graduate advising here).
For graduate advising, please call either Eric Moden at 973-883-4705 or
Mary Felipe at 972-883-4278 to set up an appointment.
Other hours by appointment.

TA : Name: Victor Xiangyang Liu


Office Hours: Friday from 4-6pm in ECSS 2.104.
E-Mail: XXL063000@utdallas.edu

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (1 of 12)6/20/2007 7:51:11 AM


Course Syllabus

Prerequisites:

CS 1336 or equivalent programming experience. (3-0) S

Catalog Description:

Introduction to object-oriented software analysis, design, and development. Classes and objects. Object
composition and polymorphism. Sorting, searching, recursion. Strings using core classes. Inheritance
and interfaces. Graphic User Interfaces. Includes a comprehensive programming project.

Course Expectations:

After successful completion of this course, the student should have an:

1. Ability to develop object oriented software solutions for use on computers


2. Ability to express algorithmic solutions in a high level computer language
3. Ability to utilize the String classes
4. Ability to utilize express multi-class relationships among objects
5. Ability to implement graphical user interfaces
6. Ability to develop graphical programs utilizing standard layout managers
7. Ability to develop event driven programs
8. Ability to process data with abstract data types
9. Ability to perform searches and sorts
10. Ability to develop programs utilizing recursive methodology
11. Ability to utilize reference variables

Textbook:

Introduction to JAVA Programming, Comprehensive Version, Sixth Edition, by Y. Daniel Liang,


Prentice Hall

Recommended Java IDE - NetBeans or JBuilder 2006 or 2007 Foundation, but NetBeans is easier
to use.

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (2 of 12)6/20/2007 7:51:11 AM


Course Syllabus

Notes on installing NetBeans

1) http://www.netbeans.info/ and go to download NetBeans 5.5.

2) after a download, it will ask it you want NetBeans installed. Say yes,

3) It will suggest a dir to put it in. Use this dir unless you have good reason to change it.

4) It will then look for your JDK (Java Development Kit) on your computer. Preferably you
should use Java 1.6. If its not on your computer, you can download and install it from www.sun.
com for free.

5) Then the NetBeans installer starts installing files. This may take awhile.

6) You can run through one of their tutorials to give you some ideas as to how to create and
run a Java project.

Assignments: (subject to change)

Program #1

Purpose: Demonstrate the ability to create and execute a JAVA program using moderately complex
control structures.

Assignment: Write a program that displays a loan amortization table. The user of the program will be
asked for values for Initial Loan Amount, Annual Percentage Rate (APR) and Monthly Payment. The
program should print out the appropriate amortization table. After the table has been printed, display the
total number of Monthly Payments and the Total Interest paid for the life of the loan. For example,
suppose that the user gave an Initial Loan Amount of $1000, an APR of 12%, and a Monthly Payment of
$200. Then the amortization table would look like:

Month Monthly Payment Monthly Interest Monthly Principle Loan Balance

1 200.00 10.00 190.00 810.00


2 200.00 8.10 191.90 618.10
3 200.00 6.18 193.82 424.28
4 200.00 4.24 195.76 228.52
5 200.00 2.29 197.71 30.81
6 31.12 0.31 30.81 0.00

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (3 of 12)6/20/2007 7:51:11 AM


Course Syllabus

Total Number of Monthly Payments: 6


Total Interest Paid: $31.12

Note that your program should continue to display rows in the amortization table until the loan balance
becomes <= the monthly payment, as it did in the example above in month 5. It then should have one
more row in which the monthly payment is the previous loan balance plus the interest on that balance.

As mentioned in the assignment description, after the table has been printed, the total number of
payments made and the total interest paid for the life of the loan are displayed.

Program #2

Purpose: Demonstrate the ability to create and execute a JAVA program that utilizes complex data
structures to solve a daily life problem.

Assignment: Write a program that will accept up to ten names (first and last names) and associated birth-
date. Your program should ask the user for how many people s/he wants to enter and then read the
names (first and last) and the corresponding birth-date in the following format: MM/DD/YYYY.
(These names and birthdays are to be entered by the user). Your program should then use a menu that
allows the user to select the way s/he wants to display the list of the entries, sorted by last name, or first
name. The program should terminate when the user selects exit from the menu. (You may use a sorting
routine from the book or you may use Arrays.sort( ) that is built into Java. )

Program #3

Purpose: Demonstrate the ability to create and execute a JAVA program that creates a multi-class
relationship among classes.

Assignment: Write a program that consists of the classes listed below.

Student Class: The Student class consists of the same three elements as in Program #2: a first name, a
last name, and a birthday. Include in the class appropriate accessor and mutator methods for each
element in the class. The birthday attribute should be stored as a Date, as discussed in class.

ChessTeam Class: The ChessTeam class consists of at least these elements -- the name of the team, the
number of players on the team, an array of players from the Student class that make up the team, and the
number of wins and losses for that team. Include in the class appropriate accessor and mutator methods
for each element in the class. You may have other attributes if needed.

Input File: Your program will read data from a file named chessteams.txt that has information about

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (4 of 12)6/20/2007 7:51:11 AM


Course Syllabus

two chess teams. Your program should work for any such file that is formatted properly. The format for
a file is:

the name of the first team


the number of players on the team
a list of the players such that each player's information is given on a single line as first name, last
name, and birthdate.
the number of wins
the number of losses
the name of the second team
the number of players on the team
a list of the players such that each player's information is given on a single line as first name, last
name, and birthdate.
the number of wins
the number of losses

For example, one possible chessteams.txt file might contain:

The Kings and Queens


3
Bobby Fischer 03/25/1947
Boris Spaski 12/21/1954
Brittany Spears 05/04/1976
10
7
The Pawns and Rooks
2
Condi Rice 06/25/1948
Rocky Balboa 11/20/1947
15
4

Finally, create a separate Class named ChessTeamDemo that has a main() method, along with the
methods needed for reading from the data file into the ChessTeam objects. You can use the class I
created for you on WebCT. You can use it as I've written it in order to test to see if your program is
reading the data file correctly. Then, modify the main() method of this class so that it will display a
menu of actions that the user can perform. The menu should be put into a loop so the user can make as
many choices as he wishes until he exits. The menu should be:

1) Display the team name of both teams and the number of players that each team has.
2) Display the names of the players (sorted by last name) for the first team.
3) Display the names of the players (sorted by last name) for the second team.
4) Display the name and birth date of the oldest player on each team.

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (5 of 12)6/20/2007 7:51:11 AM


Course Syllabus

5) Display the team name of the team with the most number of wins, along with the number of wins the
team has.
6) Exit this program.

A good idea: Rewrite your program #2 using class Student that you will create for program #3, and
class Date which I wrote for you and is on WebCT. Once you've done this, you'll have a much better
idea as to how to complete program #3.

Program #4

Purpose: To use good Object-Oriented design techniques to design and write a class.

Assignment: Design and write a class called BigInt. This class will store data and provide methods in
order to deal with non-negative large integers - up to 50 digits. It should have a default constructor that
creates a BigInt that is 0. It should also have a constructor that takes a String as a single parameter.
This String will be a String of digits from 0 to 9, e.g. "87000022222222222222222222222222221"
could be the value passed to this constructor. Your class should be able to add or subtract the current
BigInt with any other BigInt (although with 'subtract' you may assume that you will only be subtracting
a smaller number from a larger one). Supply a method getNumDigits( ) that tells how many digits the a
given BigInt has. Also, you should override the toString() method so that it will create a String that
represents the number. And have your class implement Comparable<BigInt> so that you can define the
method, compareTo(), that will compare two BigInts. Finally, have your class define method equals
( Object secondBigInt ). You must have all of these methods, but you may add others.

The test driver class for you to use is now on WebCT and is named testBigInt.java. Download it and use
it as one of the classes in your Java project. Once you have the test driver, write the class skeleton as we
discussed. Make sure that it compiles, and that the test driver program compiles as well. Only then
should you write the method definitions. You will submit two files: BigInt.java and TestBigInt.java
(which is the file that I provided on WebCT).

1st BONUS: (Worth up to an additional 50 points) Implement a method to multiply two BigInts. If you
do this, add some test code to the test class to show that your multiply methods works.

2nd BONUS: (Worth up to an additional 50 points) Create a Java Applet they will present a GUI to a
user that allows the user to add or subtract BigInts. Your GUI should be fairly simple and similar to the
one we created for allowing users to work with fractions. It should have a place for a user to enter two
big integers, and have an 'Add' button and a 'Subtract' button. Details will be discussed in class.

Academic Calendar: (subject to change)

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (6 of 12)6/20/2007 7:51:11 AM


Course Syllabus

Class Date Class Activity Assignment

1 Tuesday, May 15 Review of Syllabus Read Chapter 1


2 Thursday, May 17 Java Fundamentals Read Chapters 2, 3 and 4
3 Tuesday, May 22 Java Fundamentals Read Chapters 2, 3 and 4
4 Thursday, May 24 Methods Read Chapter 5
5 Tuesday, May 29 Methods Read Chapter 5
6 Thursday, May 31 Arrays Read Chapter 6, Program #1 due
7 Tuesday, June 05 Arrays Read Chapter 6
8 Thursday, June 07 Arrays Read Chapter 6
9 Tuesday, June 12 Exam 1 - Chapters 2, 3, 4, 5, 6
10 Thursday, June 14 Objects and Classes Read Chapter 7
11 Tuesday, June 19 Inheritance and Polymorphism Read Chapter 9, Program #2
due
12 Thursday, June 21 Inheritance and Polymorphism Read Chapter 9
13 Tuesday, June 26 Abstract Classes and Interfaces Read Chapter 10
14 Thursday, June 28 Exam 2 - Chapters 7,9,10
15 Tuesday, July 03 Object-Oriented Design Read Chapter 11, Program #3
due
16 Thursday, July 05 Object-Oriented Design Read Chapter 11
17 Tuesday, July 10 GUI Programming Read Chapter 12
18 Thursday, July 12 Event Driven Programming Read Chapter 14
19 Tuesday, July 17 User Interfaces Read Chapter 15, Program #4
due
20 Thursday, July 19 Exam 3 - Chapters 11,12,14,15

Course Requirements:

There will be regularly assigned reading and homework problems. The homework problems will require
the student to spend time programming a computer.

Programming assignments should be turned in by means of WebCT. Assignment files contain:

A text copy of all source code (.java).

Programming assignments will be graded on a 100 point basis, utilizing the following criteria:

Program Design 25%


Program Execution and Satisfaction of Specification 50%
Coding Style 15%
Comments 10%

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (7 of 12)6/20/2007 7:51:11 AM


Course Syllabus

Keep in mind that you always want to write code that is easy to understand and is also easy to maintain.

Course & Instructor Policies:

Make-up exams are only given to those students who coordinate the missing of an exam prior to the
originally scheduled exam date and time, except in the case of an emergency. They are given at the
discretion of the instructor.

Course credit is only given for work assigned and scheduled in the course schedule. Extra credit will not
be given for any work performed by a student that is not in the course schedule.

Late assignments will not be accepted. Assignments are due at 11:59 P.M. on the day listed in the
syllabus. Exceptions may be made by the instructor in the case of an emergency.

Class attendance is not recorded or required except for exam dates. There is a strong, direct correlation
between class attendance and class performance. Those students who regularly attend class tend to
make significantly higher final grades than those who don’t.

Students are expected to be respectful to each other and to the course instructor. Disruptive behavior in
the class room is not tolerated.

Each student in the class is encourage to join/form a study group. Members of each study group are
strongly encouraged to assist one another in learning and understanding the course material.

Projects and exams determine grades. All exams are open book and open notes. The final grade will be
composed as follows:

Projects 25%
Exam 1 25%
Exam 2 25%
Exam 3 25%.

Letter grades will be assigned as follows (I reserve the right to make the scale easier than the one given
here):

98-100 A+
92-97 A
90-91 A-
88-89 B+
82-87 B
80-81 B-

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (8 of 12)6/20/2007 7:51:11 AM


Course Syllabus

78-79 C+
72-77 C
70-71 C-
68-69 D+
62-67 D
60-61 D-
Below 60 F.

Field Trip Policies, Off-campus Instruction and Course Activities

Off-campus, out-of-state, and foreign instruction and activities are subject to state law and
University policies and procedures regarding travel and risk-related activities. Information
regarding these rules and regulations may be found at the website address http://www.utdallas.
edu/BusinessAffairs/Travel_Risk_Activities.htm. Additional information is available from the
office of the school dean. Below is a description of any travel and/or risk-related activity
associated with this course.

No off-campus activities are scheduled.

Student Conduct & Discipline

The University of Texas System and The University of Texas at Dallas have rules and regulations
for the orderly and efficient conduct of their business. It is the responsibility of each student and
each student organization to be knowledgeable about the rules and regulations which govern
student conduct and activities. General information on student conduct and discipline is contained
in the UTD publication, A to Z Guide, which is provided to all registered students each academic
year.

The University of Texas at Dallas administers student discipline within the procedures of
recognized and established due process. Procedures are defined and described in the Rules and
Regulations, Board of Regents, The University of Texas System, Part 1, Chapter VI, Section 3, and
in Title V, Rules on Student Services and Activities of the university’s Handbook of Operating
Procedures. Copies of these rules and regulations are available to students in the Office of the
Dean of Students, where staff members are available to assist students in interpreting the rules and
regulations (SU 1.602, 972/883-6391).

A student at the university neither loses the rights nor escapes the responsibilities of citizenship.
He or she is expected to obey federal, state, and local laws as well as the Regents’ Rules,
university regulations, and administrative rules. Students are subject to discipline for violating the

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (9 of 12)6/20/2007 7:51:11 AM


Course Syllabus

standards of conduct whether such conduct takes place on or off campus, or whether civil or
criminal penalties are also imposed for such conduct.

Academic Integrity

The faculty expects from its students a high level of responsibility and academic honesty.
Because the value of an academic degree depends upon the absolute integrity of the work done by
the student for that degree, it is imperative that a student demonstrate a high standard of individual
honor in his or her scholastic work.

Scholastic dishonesty includes, but is not limited to, statements, acts or omissions related to
applications for enrollment or the award of a degree, and/or the submission as one’s own work or
material that is not one’s own. As a general rule, scholastic dishonesty involves one of the
following acts: cheating, plagiarism, collusion and/or falsifying academic records. Students
suspected of academic dishonesty are subject to disciplinary proceedings.

Plagiarism, especially from the web, from portions of papers for other classes, and from any other
source is unacceptable and will be dealt with under the university’s policy on plagiarism (see
general catalog for details). This course will use the resources of turnitin.com, which searches the
web for possible plagiarism and is over 90% effective.

Email Use

The University of Texas at Dallas recognizes the value and efficiency of communication between
faculty/staff and students through electronic mail. At the same time, email raises some issues
concerning security and the identity of each individual in an email exchange. The university
encourages all official student email correspondence be sent only to a student’s U.T. Dallas email
address and that faculty and staff consider email from students official only if it originates from a
UTD student account. This allows the university to maintain a high degree of confidence in the
identity of all individual corresponding and the security of the transmitted information. UTD
furnishes each student with a free email account that is to be used in all communication with
university personnel. The Department of Information Resources at U.T. Dallas provides a method
for students to have their U.T. Dallas mail forwarded to other accounts.

Withdrawal from Class

The administration of this institution has set deadlines for withdrawal of any college-level
courses. These dates and times are published in that semester's course catalog. Administration
procedures must be followed. It is the student's responsibility to handle withdrawal requirements
from any class. In other words, I cannot drop or withdraw any student. You must do the proper
paperwork to ensure that you will not receive a final grade of "F" in a course if you choose not to
attend the class once you are enrolled.

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (10 of 12)6/20/2007 7:51:11 AM


Course Syllabus

Student Grievance Procedures

Procedures for student grievances are found in Title V, Rules on Student Services and Activities,
of the university’s Handbook of Operating Procedures.

In attempting to resolve any student grievance regarding grades, evaluations, or other fulfillments
of academic responsibility, it is the obligation of the student first to make a serious effort to
resolve the matter with the instructor, supervisor, administrator, or committee with whom the
grievance originates (hereafter called “the respondent”). Individual faculty members retain
primary responsibility for assigning grades and evaluations. If the matter cannot be resolved at
that level, the grievance must be submitted in writing to the respondent with a copy of the
respondent’s School Dean. If the matter is not resolved by the written response provided by the
respondent, the student may submit a written appeal to the School Dean. If the grievance is not
resolved by the School Dean’s decision, the student may make a written appeal to the Dean of
Graduate or Undergraduate Education, and the deal will appoint and convene an Academic
Appeals Panel. The decision of the Academic Appeals Panel is final. The results of the academic
appeals process will be distributed to all involved parties.

Copies of these rules and regulations are available to students in the Office of the Dean of
Students, where staff members are available to assist students in interpreting the rules and
regulations.

Incomplete Grade Policy

As per university policy, incomplete grades will be granted only for work unavoidably missed at
the semester’s end and only if 70% of the course work has been completed. An incomplete grade
must be resolved within eight (8) weeks from the first day of the subsequent long semester. If the
required work to complete the course and to remove the incomplete grade is not submitted by the
specified deadline, the incomplete grade is changed automatically to a grade of F.

Disability Services

The goal of Disability Services is to provide students with disabilities educational opportunities
equal to those of their non-disabled peers. Disability Services is located in room 1.610 in the
Student Union. Office hours are Tuesday and Thursday, 8:30 a.m. to 6:30 p.m.; Tuesday and
Thursday, 8:30 a.m. to 7:30 p.m.; and Friday, 8:30 a.m. to 5:30 p.m.

The contact information for the Office of Disability Services is:


The University of Texas at Dallas, SU 22
PO Box 830688
Richardson, Texas 75083-0688
(972) 883-2098 (voice or TTY)

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (11 of 12)6/20/2007 7:51:11 AM


Course Syllabus

Essentially, the law requires that colleges and universities make those reasonable adjustments
necessary to eliminate discrimination on the basis of disability. For example, it may be necessary
to remove classroom prohibitions against tape recorders or animals (in the case of dog guides) for
students who are blind. Occasionally an assignment requirement may be substituted (for example,
a research paper versus an oral presentation for a student who is hearing impaired). Classes
enrolled students with mobility impairments may have to be rescheduled in accessible facilities.
The college or university may need to provide special services such as registration, note-taking, or
mobility assistance.

It is the student’s responsibility to notify his or her professors of the need for such an
accommodation. Disability Services provides students with letters to present to faculty members
to verify that the student has a disability and needs accommodations. Individuals requiring
special accommodation should contact the professor after class or during office hours.

Religious Holy Days

The University of Texas at Dallas will excuse a student from class or other required activities for
the travel to and observance of a religious holy day for a religion whose places of worship are
exempt from property tax under Section 11.20, Tax Code, Texas Code Annotated.

The student is encouraged to notify the instructor or activity sponsor as soon as possible regarding
the absence, preferably in advance of the assignment. The student, so excused, will be allowed to
take the exam or complete the assignment within a reasonable time after the absence: a period
equal to the length of the absence, up to a maximum of one week. A student who notifies the
instructor and completes any missed exam or assignment may not be penalized for the absence. A
student who fails to complete the exam or assignment within the prescribed period may receive a
failing grade for that exam or assignment.

If a student or an instructor disagrees about the nature of the absence [i.e., for the purpose of
observing a religious holy day] or if there is similar disagreement about whether the student has
been given a reasonable time to complete any missed assignments or examinations, either the
student or the instructor may request a ruling from the chief executive officer of the institution, or
his or her designee. The chief executive officer or designee must take into account the legislative
intent of TEC 51.911(b), and the student and instructor will abide by the decision of the chief
executive officer or designee.

These descriptions and timelines are subject to change at the discretion of the Professor.

file:///W|/submissions-web/syllabus-tool/+syl-cs1337.521.07u-@tfarage.htm (12 of 12)6/20/2007 7:51:11 AM

Você também pode gostar