You are on page 1of 9

Course Syllabus CS 1336 Fall 2008

Course Syllabus

Last Updated : Thursday, September 11, 2008 07:43 PM

Special Message or Changes: TA information is now given below. Check this page frequently for
possible changes in test dates, programming due dates, etc.

Course Numbers: CS 1336.004 TR from 4:00pm - 5:15pm in ECSS 2.410 and

CS 1336.501 TR from 5:30pm - 6:45pm in ECSS 2.410

Course Title: Introduction to Computer Science

Credit Hours: 3

Semester: Fall, 2008

Instructor: Tim Farage

Office: ECSS 3.606

Office Phone: 972-883-4836

E-Mail: tfarage@utdallas.edu

UTD Home Page: www.utdallas.edu/~tfarage

Office Hours:

Tuesday, 2:00pm - 4:00pm and 6:45-7:45pm in ECSS 3.606

file:////Warhol/dox_repository$/syllabus-web-submissions/1221340495+syl-cs1336.004.08f-@tfarage.htm (1 of 9)9/15/2008 8:38:44 AM


Course Syllabus CS 1336 Fall 2008

Thursday, 2:00pm - 4:00pm and 6:45-7:45pm in ECSS 3.606

Monday, noon - 2:00pm ECSS 2.502

Wednesday, noon - 2:00pm ECSS 2.502

Other hours by appointment.

TA Information for CS 1336.004:

Name: Ryan Zeigler

E-Mail: ryan.zeigler@student.utdallas.edu

Office Hours: Tuesday and Thursday from 2-4pm in ECSS 3.232

TA Information for CS 1336.501:

Name: Arvind Balasubramanian

E-Mail: axb081100@utdallas.edu

Office Hours: Monday and Wednesday from 4-6pm in ECSS 4.608

Prequisites:

None.

Java IDE Used in Class:

file:////Warhol/dox_repository$/syllabus-web-submissions/1221340495+syl-cs1336.004.08f-@tfarage.htm (2 of 9)9/15/2008 8:38:44 AM


Course Syllabus CS 1336 Fall 2008

NetBeans 6.1 is used although you are welcome to use and IDE that you wish. For detailed
instructions on installing NetBeans 6.1, click here.

Testing Policy: Tests are open book and open notes, but no computers, calculators or other electronics
are allowed.

Course Objectives:

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

1. Ability to develop algorithmic solutions for use on computers


2. Ability to express algorithmic solutions in a high level computer language
3. Ability to utilize fundamental programming structures - linear processing
4. Ability to utilize fundamental programming structures - conditional processing
5. Ability to utilize fundamental programming structures - loop processing
6. Ability to process data in arrays
7. Ability to develop programs in a functional/method form
8. Ability to perform searches and sorts
9. Ability to utilize reference variables
10. Ability to manipulate character and string data
11. Ability to perform sequential file input and output.

Textbook:

Starting Out with Java, From Control Structures through Objects, Third Edition, by Tony Gaddis,
Addison Wesley

Programming Assignments

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

All programming assignments are to be turned in using WebCT. Login to your WebCT account, click on
the link for this course. On the left side, click on the link for ‘Assignments’, and then click on the
desired Program link. In the ‘Add Comment’ section , put your name, the course name, section, and
date, as well as the platform (e.g. NetBeans) that you used. Then click on 'Add Attachments', and
then 'My Computer', and then browse until you locate your Java program. Click on it and it should
upload to WebCT. Then click 'Submit' and that should do it. If for some reason this does not work, you

file:////Warhol/dox_repository$/syllabus-web-submissions/1221340495+syl-cs1336.004.08f-@tfarage.htm (3 of 9)9/15/2008 8:38:44 AM


Course Syllabus CS 1336 Fall 2008

can email me your program, but it must be done before the due date and time.

Programming assignments will be graded on a 100 point basis. Correct execution, program design,
coding style, documentation, and comments all contribute toward your grade. Keep in mind that you
always want to write code that is easy to understand and is also easy to maintain. Fewer lines does
not necessarily mean a better program. Please use comments liberally.

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

Late assignments will not be accepted and are due at 11:59pm on the due date given in this
syllabus.

Program # 1

Purpose: Demonstrate the ability to create and execute a Java program utilizing basic, elementary
Java statements.

Assignment: Write a program that calculates a car’s gas mileage. Accept from the keyboard the
number of gallons consumed on the trip, the starting mileage for the trip and the ending mileage for
the trip. Calculate the miles per gallon and print all the data in a clear format on the screen.

Program # 2

Purpose: Demonstrate the ability to create and execute a Java program utilizing the if/else control
statement.

Assignment: Write a program that comments upon the temperature outside. It should first ask what
the temperature is in degrees Fahrenheit. If the temperature entered is less than -100 degrees or
greater than 150, display an appropriate error message and terminate. Otherwise, if the temperature
is 10 or less, your program should display the message, "It's really, really cold out. Let’s go play
WII". If the temperature is over 10 but no more than 32, your program should display the message,
"Stop playing with the computer, and go make a snowman." If the temperature is over 32 but no
more than 60, your program should display the message, "Hey! My Igloo is melting.". If the
temperature is over 60 but no more than 80, your program should display the message, "It’s a
beautiful day in the neighborhood.” And finally, if the temperature over 80, your program should
display the message, "It’s really hot out here. I’m sure human-caused global warming is the culprit. I
must stop driving my car so much so that Al Gore can fly around the country and tell us to decrease
our carbon footprint.”

Program # 3

file:////Warhol/dox_repository$/syllabus-web-submissions/1221340495+syl-cs1336.004.08f-@tfarage.htm (4 of 9)9/15/2008 8:38:44 AM


Course Syllabus CS 1336 Fall 2008

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

Assignment: Write a program that creates a loan amortization table. The user of the program will
supply values for Initial Loan Principal, Annual Percentage Rate and Monthly Payment. The program
should print out the appropriate amortization table. The table should have headings for the month
number, the monthly payment, monthly interest amount, monthly principal, remaining principal, and
total interest paid so far. The program will run starting at month 1 until finally the remaining principle
is less than the monthly payment. Then the next month will be the last month and the payment may
be different that what it has been.

For example, suppose that the user inputs the Initial Loan Principal to be $5000, the Annual
Percentage Rate to be 12% and Monthly Payment to be $300. Then the first 3 rows of the table would
be:

Month Payment Interest Principal Remaining Principle Total Interest Paid So Far

1 300.00 50.00 250.00 4750.00 50.00

2 300.00 47.50 252.50 4497.50 97.50

3 300.00 44.98 255.02 4242.48 142.48

As mentioned above, your program will continue to compute new rows until the Remaining Principle is
less than the Monthly Payment. At that point the values for the last row are computed and displayed.

Note that your program should work for any valid values input by the user.

Program # 4

Purpose: Demonstrate the ability to create and use Java methods.

Assignment: pg 283 #13 (determining if a number is prime)

Program # 5

Purpose: Demonstrate the ability to create and use Java files and arrays.

Assignment: First, you should use Notepad (or any other text editor) to create a file ahead of time.
The file should have 6 double values on separate lines. These values represent the earnings of a
person for each of the first 6 months in a year; thus each double value will have exactly two places to
the right of the decimal. Name this file, "C:\\earnings.txt".

file:////Warhol/dox_repository$/syllabus-web-submissions/1221340495+syl-cs1336.004.08f-@tfarage.htm (5 of 9)9/15/2008 8:38:44 AM


Course Syllabus CS 1336 Fall 2008

Your program should open and then read the 6 double values from this file
into an array named 'earnings'. Use a 'for' loop to do this.

Then use another 'for' loop to display the earnings as they were in the file.
After this, sort the array using Java's Arrays.sort( ) method,
and then display the earnings in sorted order.
Finally, compute and display the average of the earnings.

For example, suppose that you created the file, "C:\\earnings.txt" and that the contents of the file are:

1012.30
1400.71
1250.78
5000.40
3050.70

2134.88

After your program executes its output would be:

The earnings from the file are:

1012.30
1400.71
1250.78
5000.40
3050.70
2134.88

After sorting the earnings are:

1012.30
1250.78
1400.71
2134.88
3050.70
5000.40

The average earnings for the half year is $2308.29

Course Calendar (subject to change):

file:////Warhol/dox_repository$/syllabus-web-submissions/1221340495+syl-cs1336.004.08f-@tfarage.htm (6 of 9)9/15/2008 8:38:44 AM


Course Syllabus CS 1336 Fall 2008

Class Date Class Activity Assignments Due

0 August 21 Review of Syllabus

1 August 26 Chapter 1

2 August 28 Chapter 1

3 September 2 Chapter 2

4 September 4 Chapter 2

5 September 9 Chapter 2

6 September 11 Chapter 2

7 September 16 Chapter 2 Program 1 Due

8 September 18 Chapter 3

9 September 23 Chapter 3

10 September 25 Exam 1 - Chapters 1, 2 and 3 up to pg 126

11 September 30 Chapter 3 Program 2 Due

12 October 2 No class due to a conference

13 October 7 Chapter 4

14 October 9 Chapter 4

15 October 14 Chapter 4

16 October 16 Chapter 4

17 October 21 Chapter 4

18 October 23 Chapter 4 Program 3 Due

19 October 28 Exam 2 - Chapters 3 & 4

20 October 30 Chapter 5

file:////Warhol/dox_repository$/syllabus-web-submissions/1221340495+syl-cs1336.004.08f-@tfarage.htm (7 of 9)9/15/2008 8:38:44 AM


Course Syllabus CS 1336 Fall 2008

21 November 4 Chapter 5

22 November 6 Chapter 5

23 November 11 Chapter 8 Program 4 Due

24 November 13 Chapter 8

25 November 18 Chapter 8

26 November 20 Chapter 8

27 November 25 Chapter 8

28 December 2 Chapter 8

29 December 4 Exam 3 - Chapters 5 and 8 Program 5 Due

Course & Instructor Policies:

Your grade will be based only on your test scores. PLEASE do not ask me to change your grade or give
you a grade for any other reason. I know that some of you will lose scholarships, be deported, etc. if
you do not make a certain grade; there is nothing I can do about this. Of course, if a mistake was
made in scoring, I will correct it. Any requests for changes to scores must be made within 30 days
after the day the graded material was returned to the class. Any request for a grade change must be
made within 60 days after the day that grades were posted.

No extra work will be assigned nor will extra credit be given for any extra work performed by a student.

Class attendance is not recorded or required except for exam dates and times. There is a 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 encouraged to join/form a study group. Members of each study should
support 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:

Programming Projects 25%


Exam 1 25%
Exam 2 25%

file:////Warhol/dox_repository$/syllabus-web-submissions/1221340495+syl-cs1336.004.08f-@tfarage.htm (8 of 9)9/15/2008 8:38:44 AM


Course Syllabus CS 1336 Fall 2008

Exam 3 25%

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

98-100 A+

92-97 A

90-91 A-

88-89 B+

82-87 B

80-81 B-

78-79 C+

72-77 C

70-71 C-

68-69 D+

62-67 D

60-61 D-

Below 60 F.

file:////Warhol/dox_repository$/syllabus-web-submissions/1221340495+syl-cs1336.004.08f-@tfarage.htm (9 of 9)9/15/2008 8:38:44 AM

You might also like