CSC-111 Intro to Java Programming Syllabus

Semester Fall 2018
Credits 3 + 1 Credit Lab
Professor Antonio C. Silvestri
Office 17/415
Phone 413-755-4621
E-Mail  (Please use email whenever possible.)

Course Description

This course provides first-time programmers a fundamentals-first approach to learning the Java programming language. The course introduces basic programming concepts and techniques including selection, looping, method definitions, step-wise refinement, and arrays. In addition to these fundamental concepts the beginnings of object oriented programming and class creation are introduced. Students will primarily be developing command line Java applications and by the end of class should be able to create simple programs using Java technology and read and edit Java technology source code using an industry standard integrated development environment (IDE).

Prerequisites: MAT 097 or placement at college-level math.

Corequisites: CSC 111L; MAT-124 or higher.

This course is designed for those students interested in transferring to a four year college or university. Consequently, the student must be prepared to invest much time and effort for successful course completion.

Required Textbook and Resources

Introduction to Java Programming, Comprehensive Version, 11/E
Y. Daniel Liang
ISBN-10: 0134670949
ISBN-13:  9780134670942
Publisher:  Pearson
Copyright:  2018

The textbook comes with a  code for online access to the textbook’s site.  If you have a book and want access to the companion site, the ISBN is 0133767175.

Course Policy

WEBSITE: In an effort to implement distance learning, course files will be placed on the Internet. Homework and lab assignments, solutions, and class announcements can be accessed using the web. Access the STCC Computer Science Web page using the URL:

All course announcements and correspondence will be done through this site.  Also check your school issued email accounts for the latest course announcements, homework, and news.  It is your responsibility to visit this course site and check your email at least once every other  day.  It is unacceptable to say that you are not aware of something happening in the course.

HOMEWORK: Homework will be assigned after a major topic has been developed. The homework will consist of a programming assignment that reinforces a topic discussed in lectures. Each assignment has equal weight. Ten or more assignments will be assigned.

Homework is to be a reflection of things learned in class and lectures.  While you can certainly ask the instructor some questions on homework assignments, excessive questioning of the instructor on homework does not reflect well on your grasp of the material.  There have been times in the past where students questioned the instructor to the point where the program they submitted was really something the instructor wrote. The instructor in reality should have been awarded the A on the assignment.  So please understand that in the interest of fairness to others in the class, excessive questioning will result in a reduction of the grade earned on the assignment.

At the start of each source listing, a global comment identification section containing the following information must be included:

  1. Your name
  2. Date
  3. Course Name and Number
  4. Problem Number
  5. Short Description of the Problem
  6. The email address where you can be reached.

Missing 2 assignments will be grounds for dismissal from class. Late homework cannot be accepted as solutions to the homework are routinely given as part of lectures.

ATTENDANCE:  Attendance is required; a student is expected to attend all scheduled classes.  Missing 6 MWF classes, or 4 TTh classes, or the equivalent of 2 weeks of lecture will be grounds for class dismissal.  Students who arrive late to a class and miss the attendance call will be considered absent.  Any benefit of the doubt in the final grade will be given to students who come to class regularly.  You will find each class contains much material.  If you miss a class,  do not expect  the instructor to review missed material. It is your responsibility to get the lecture notes from a fellow student. Check the website for any materials discussed in class.

CELL PHONE POLICY: Turn it off, please! Cell phone use of any kind (i.e., as phone, calculator, camera, etc.) is prohibited in class or lab unless an emergency situation exists which requires the student to be available by phone. In those rare instances, the phone should be placed on vibrate; the student will momentarily excuse himself/herself from class and handle phone calls outside of the room.

LAPTOPS: Students may use laptops in class to take notes, but may not use them in any way on exams. The instructor reserves the right to suspend or ban laptop use if, as determined by the instructor, any student is using a laptop inappropriately or to the detriment of other students.

CHEATING POLICY: While student interaction on the solution of homework problems and labs is encouraged, blatant cheating and/or copying on homework and lab assignments will not be tolerated and will result in a 0 grade for the assignment in question for all participants. Dismissal from the class can also be an option depending on the severity of the incident.

If the instructor senses a problem with an assignment, perhaps the assignment was not the students’ work, the instructor reserves the right to question the student to have them prove they did the work.

GRADING POLICY: The three components that make up your grade is described in the following table:

Activity Weight Additional Info
40% Each assignment has equal weight. 8 or more assignments will be assigned. Missing 2 assignments will be grounds for dismissal.
Mid Term Exams 40% 4 or 5 Exams of Equal Weight.
Final Exam 20% Consistent good work is rewarded.  Any student with an A average of ALL exams and homework at the end of the semester will not need to take the final!!!  All exams and homework must be taken in order to qualify for this reward.

Based on the percentages in the table above, an overall grade will be calculated. That grade will be entered for both the 3 credit lecture and 1 credit lab. 

Exams can be either a multiple choice type exam or in-lab problem solving exam where a programming problem is proposed and the student will write a program solution.  When an in-lab programming exam is scheduled, you required to use the Eclipse IDE and the command line java utilities, javac and java.  While there are a multitude of ways to build your programs, our lab is equipped with only these utilities.

Students with Disabilities: If you have a disability and need assistance, please notify your instructor and make an appointment with the Office of Disability Services (27/2nd floor), or call 755-4785. Academic accommodations become effective when Disability Services, the instructor, and the student complete all paperwork and may not be used to alter a grade on previous course work.

Suggestions on How to do Well in this Class

  1. Keep a notebook either paper or electronic and take the best possible notes at each lecture. Some lecture material may not be fully discussed in the text. Also, problem solutions are performed routinely in the lectures.
  2. Start your assignments immediately after they have been assigned!!! It is unfortunate that students tend to put off working on their assignments until the day before it is due. Their work is usually substandard and their grades reflect it.
  3. In order to receive credit for an assignment, you must submit something that shows you were near a solution. The worse thing you can do is submit nothing. Nothing is the equivalent of a zero, and we all know what a zero can do to an average.
  4. Give a good effort to solving homework problems. Take the time to thoroughly understand the homework since it is through these assignments that you will understand the subject matter.
  5. Attend class and arrive on time.
  6. Arrive prepared with textbooks and assignments completed when they are due.
  7. Participate in group activities and class discussions.
  8. Be orderly and respectful toward your instructors and your fellow students.
  9. Observe the rules of academic integrity

Course Content

(See your book’s Table of Contents for specific chapter details.)

  • Chapter 1 Introduction to Computers, Programming, and Java
  • Chapter 2 Elementary Programming
  • Chapter 3 Selections
  • Chapter 4 Mathematical Functions, Characters, and Strings
  • Chapter 5 Loops
  • Chapter 6 Methods
  • Chapter 7 Single-Dimensional Arrays
  • Chapter 8 Multidimensional Arrays
  • Chapter 9 Objects and Classes
  • Chapter 10 Object-Oriented Thinking

Student Learning Outcomes

  • Students will be able to explain what a program is made of
  • Students will be able to define variables, write arithmetic statements efficiently and format the output
  • Students will be able to write a program with decision-making logic
  • Students will be able to write a control structure that causes a group of statements to repeat
  • Students will be able to write a method with and without arguments
  • Students will be able to use One-dimensional and two-dimensional arrays in programming
  • Students will be able to Write a program using objects and classes