Department of Mathematics and Computer Science

Adelphi University

Fall 2014

 

0145-171-002 & 0145-171-020

Introduction to Computer Programming + Lab - 4 credits

002 (Lecture): TR 10:50 – 12:05 in SWL 100

020 (Lab)  TR 12:15 – 1:30  in SWL 101

Visiting Professor Kristin Pepper

102 / 103 Post Hall

(516) 297-5241

pepper@adelphi.edu

www.adelphi.edu/~pe16132

 

Office Hours

Tuesday / Thursday   9:00 – 10:30

Monday / Wednesday   10:00 – 11:30

Course Description and Purpose

Develop a solid foundation in a modern programming language, concepts of programming such as variables, data types, functions, I/O, parameter-passing, assignment, classes, lists, arrays, conditionals, loops, and recursion. Understand techniques of analysis, design, testing, documentation, coding, and debugging.

This is the introductory course for students interested in majoring in Computer Science (CS) or Computer Management & Information Systems (CMIS).  To receive credit for this course, you must be registered for both the lecture and lab sections.

Gen Ed

 

Learning

Goal

Requirements

 

Formal Science

 

Quantitative Reasoning

Course Learning Goals

Students will program in the Java language using a program development environment (BlueJ) to carry out a design-code-test-debug cycle. Students will apply a procedural programming paradigm by writing small working programs that utilize variables, methods, classes, conditionals, recursion, and looping. Students will design solutions for written problems by using online tools such as myprogramminglab and codingbat. Students will trace the execution of programs by hand, tracing values of variables at different times both on paper and while debugging their own programs. Students will demonstrate fluency in the object-oriented programming paradigm by completing many small programs that use and create objects. The final game creation project will demonstrate proficiency in the use of spiral development methodology, which includes a sequence of testable versions. The game creation will require selection of test cases, solution design and implementation, testing and internal program documentation.

 

Prerequisite

None. Non-CS/Math majors should consider taking CSC 160 first or instead.

Required Texts

Reges, Stuart and Stepp, Mary, Building Java Programs: A Back to Basics Approach 3/E. New York: Addison-Wesley, 2014 packaged with MyProgrammingLab. (ISBN: 978-0-13-336090-5). (The older versions of the textbook (9780136091813 or 978-0-321-38283-2) are acceptable, but you will also need to purchase a $42.40 subscription to MyProgrammingLab and may need to get an occasional assignment from the 3/E version.)

 

When you access MyProgrammingLab, the code is ADEL-15998-CWYB-22. Find registration instructions on my web site at http://home.adelphi.edu/~pe16132/csc171/myprogramminglab.html

 

 

A flash drive is also recommended.

 

Topics

The order of topic coverage will generally follow the chapters in the required textbook, with supplementary material added, as noted below:

  • Introduction
  • Data and Expressions
  • Writing Methods and method decomposition
  • Loops and Conditionals
  • Using Classes and Objects
  • Writing Classes and OO design
  • Arrays

  

NOTE ON FINAL EXAMS:  All students must take the final exam at the scheduled time according to the final exam schedule ( http://ecampus.adelphi.edu/registrar/exams.php  )

 

Major Assignments

Assignments should be done using the free BlueJ development environment over JavaTM 2 Platform Standard Edition 8.0 (JDKTM 8.0). To install the BlueJ environment,  Find install instructions on my web site at http://home.adelphi.edu/~pe16132/csc171/bluej/downloadbluej.htm

 

Major assignments are:

 

  • A series of assignments in which students each code half of the answer and then join their answers together to form one program that performs two functions.

 

 

 

  • Code text based dice rolling game.

 

  • Code pick a card scenario function.

 

  • Draw a graphics game board using a preconfigured graphics library.

 

  • Use a robot to demonstrate loop and array logic.

 

  • Final individual or group project: Develop a two player game played on one personal computer, possibly with one robot attached. The game involves some random action and special conditions.

 

Grading

The midterm must be completed as a minimum for credit. Each exam must be taken at the time scheduled. 10% will be dropped for anything 1 week late. Be sure to back up your classwork frequently so that you do not lose work.

The course grading scale is: A 93-100, A- 90-92, B+ 87-89, B 83-86, B- 80-82, C+ 77-79, C 73-76, C- 70-72, D 60-69, and F is below 59. A+ is given at the professor's discretion.

The final grade will be a traditional letter grade (A-F). Excessive absences, lateness, and any activities which run counter to the best interests of the class will be deducted at the end of the semester from the final grade as a percentage to be determined by the professor.

 

Grade Percentages:

Midterm Exam - 25%

Quizzes - 10%

Assignments - 45%

Final  - 20%

 

 

Attendance

The following is the Adelphi University General Attendance Policy:

Only students who are registered for courses, and whose name appears on the Official Class Roster may attend courses at the University. Adelphi students make a commitment to be active participants in their educational program; class attendance is an integral part of this commitment. Attendance requirements for each course will be announced by the faculty member at the beginning of each term. Students are expected to be present promptly at the beginning of each class period, unless prevented by illness or by other compelling cause. In the event of such absence, students may request that faculty members be notified by the Office of Academic Services and Retention. Students are responsible for completing course work missed through absences. Students should wait a reasonable length of time for an instructor in the event that the instructor is delayed.

 

Additionally, you are also responsible for whatever work is covered in class whether or not you are there. Absence from the final exam will be excused only for a good and well-documented reason. The decision to allow a make-up exam will be made in accordance with the policies of Adelphi University.

 

If the University is closed for any class session due to an emergency, log onto this course site under the MOODLE tab in eCampus each day for instructions and assignments. Please check your Moodle News on snow closing days as snow days may be replaced with online instruction. 

 

Moodle

All course materials will be delivered through Moodle. The All Assignments task will describe all assignments and due dates. Use Moodle to hand in all assignments. A Moodle tutorial can be found at http://fcpe.adelphi.edu/moodle/student/

 

This is a weekly schedule. All reading should be done by the beginning of the week. The professor reserves the right to change this schedule.

 

Date

week

Subject

Assigned Reading

9/4

1

Introduction (hello world) & Structure, Strings, Variable names, Comments, Methods

Chapter 1

9/9, 9/11

2

Variables of primitive types, arithmetic, flow chart

Chapter 2

9/16, 9/18

3

9/16 Quiz on variables and structure; FOR loop, variable scope, testing methods, and drawing

Chapter 2

9/23, 9/25

4

9/25 Quiz on FOR loops; 

Parameters

Chapter 3

9/30, 10/2

5

Using objects, scanner & Math & Random 

 (Last day to drop a course: 10/1)

Chapter 3

10/7, 10/9

6

Decisions

10/7  Quiz on parameters, objects

Chap 4.1-4.3

10/14, 10/16

7

Review

 

10/21, 10/23

8

Midterm 10/21; Recursion; Graphics (Picturing programs); Exceptions

Chap 4.4-4.5, Chapter 12

10/28, 10/30

9

While loop, Boolean type, do while (finch robot)

Chapter 5

11/4, 11/6

10

Arrays  (finch robot)

11/4 - Quiz on While and recursion

(Last day to withdraw: 11/5)

Chapter 7

11/11, 11/13

11

Classes  

11/13 – Quiz on Arrays

Chapter 8

11/18, 11/20

12

Classes (finch robot)

Chapter 8

11/25,

No class on 11/27

13

11/25 quiz on Classes 

Inheritance

(11/27 vacation)

Chapter 9

12/2, 12/4

14

Interfaces & sharing game design

Chapter 9

12/9, 12/11

15

Review

 

12/16

 

Final Tuesday 12/16 10:30 – 12:30

 

12/23

Makeup day if needed

 

 

 

Turnitin

Adelphi University has a license agreement with Turnitin.com, a service that helps prevent plagiarism from Internet resources. I reserve the right to request an electronic copy of any written assignment submitted in this course for review through Turnitin.com. Please see Adelphi's tips for students on preventing plagiarism and student instructions for Turnitin.com for more information.

 

Students With Disabilities

If you have a disability that may impact your ability to carry out assigned course work, and are not enrolled in the Learning Disabilities Program, it is important that you contact the staff in the Disability Support Services Office (DSS), University Center, Room 310, (516) 877 3145. DSS@adelphi.edu. DSS will review your concerns and determine, with you, appropriate and necessary accommodations. All information and documentation of disability is confidential.

 

 

Honor Code

Students enrolled in this course are expected to abide by the Adelphi

University Honor Code. The purpose of the Honor Code is to protect the academic integrity of the University by encouraging consistent ethical behavior in assigned coursework by students. Following is excerpted from the Student Honor Code:

The code of academic honesty prohibits behavior, which can broadly be described as lying, cheating, or stealing. Violations of the code of academic honesty will include, but are not limited to, the following:

1.     Fabricating data or citations

2.     Collaborating in areas prohibited by the professor

3.     Unauthorized multiple submission of work

4.     Sabotage of others' work, including library vandalism or manipulation

5.     Plagiarism: presenting any work as one's own that is not one's own

6.     The creation of unfair advantage

7.     The facilitation of dishonesty

8.     Tampering with or falsifying records

9.     Cheating on examinations through the use of written materials or giving or receiving help in any form during the exam, including talking, signals, electronic devices, etc.

 

Avoid coding plagiarism: Any code you even vaguely take from the internet needs to be cited in comments. If an algorithm you found was used as a basis, cite it. Any person helping you, even a tutor, needs to be listed in the comments. If you work with another person doing homework, include them in your comments.  If you include any piece of code you do not fully understand for your final project, comment that you are using it as a black box. You are responsible for explaining how every piece of code works except those you designate as "black box" portions.

Student Course

Evaluations

During the last two weeks of the class, you will receive notification, via mail and eCampus, that the course evaluation is available for your input electronically. Availability will end at the start of the final examination period. Your feedback is valuable and I encourage you to respond. Please be assured that your responses are anonymous and the results will not be available to the instructor until after the end of the semester and therefore after course grades have been submitted.