CS 2001 Summer 2006 

ACCELERATED INTRODUCTION TO COMPUTER SCIENCE (JAVA)

COURSE SYLLABUS - RICE CAMPUS

Instructor: Omar Aldawud

 

 http://www.csam.iit.edu/~oaldawud/CS201/index.html

 

LECTURERS

Instructor

Omar Aldawud(aldaoma@iit.edu)

Lecture:Tuesday 6:25 - 9:05 MW

Office:Rice  Rice Campus Room 230

Office Hours: Monday Thru Friday  5:00 - 6:25

Voice:  630 - 682- 6021

Fax:312.567.5067

Mailbox: Rice Campus : Dr. Omar Aldawud CS201

 

LAB SECTIONS

SECTION

DAY

TIME

ROOM

LAB TA

ALL

TR

6:15 to 9:00

Rice, IITV

 

GOAL 

Students should be able to:

· Analyze and explain the behavior of simple programs involving the following fundamental

programming constructs: assignment, I/O (including file I/O), selection, iteration, functions, pointers

· Write a program that uses each of the following fundamental programming constructs: assignment, I/O

(including file I/O), selection, iteration, functions, pointers

· Break a problem into logical pieces that can be solved (programmed) independently.

· Develop, and analyze, algorithms for solving simple problems.

· Use a suitable programming language, and development environment, to implement, test, and debug

algorithms for solving simple problems.

· Write programs that use each of the following data structures (and describe how they are represented in

memory): strings, arrays, structures, and STL class libraries including strings and vectors

· Explain the basics of the concept of recursion.

· Write, test, and debug simple recursive functions and procedures.

· Explain and apply object-oriented design and testing involving the following concepts: data abstraction,

encapsulation, information hiding, sub-classing, inheritance, templates

· Use a development environment to design, code, test, and debug simple programs, including multi-file

source projects, in an object-oriented programming language.

· Solve problems by creating and using sequential search, binary search, and quadratic sorting algorithms

(selection, insertion)

· Determine the time complexity of simple algorithms.

·Students will also learn some problem-solving strategies

REQUIRED COMPUTING RESOURCES 

The compiler of choice is Sun’sJ2SDK 1.4.2 downloadable from: http://java.sun.com/j2se/1.4.2/download.html (Download J2SE v 1.4.2 for your system)

The Intergraded Development Environment (IDE) of choice: TBD
 

LAB MANUAL (REQUIRED) 

Nell Dale, A Laboratory Course for Programming with Java,©2003, Jones & Bartlett Publishers, Inc.;ISBN 0-7637-2463-7

TEXTBOOK (REQUIRED)

Nell Dale, ChipWeems, Mark Headington, Programming and Problem Solving with Java, ©2003, Jones & Bartlett Publishers, Inc.;ISBN 0-7637-0490-3

LAB FILES 

You may download lab files (program shells, test programs, data files, ...) by following the Student Files link from the lab book Website at

http://computerscience.jbpub.com/ppsjava/lab_manual.cfm
 

LABORATORIES 

The labs are designed to assist you in developing a more concrete understanding of the concepts introduced in lecture. They also serve as a springboard for the programming project that you create later in the semester. You are required to attend each lab session. Your work is graded during your scheduled lab session. Make-up labs are NOT given. In the event of an illness that causes you to miss your lab session, it may be possible for you to make arrangements with your lab instructor to attend another lab session. The labs for this class are designed to give you practical experience with the material discussed in lecture. They are NOT intended to produce a high-pressure environment. You must bring your lab book (including completed test plans) and a 3.5" disk containing your assigned programs to each lab session. Most lab sessions will also include an In-lab exercise which may involve writing a new routine, modifying code from your Prelab work, and/or answering "analysis type"  questions about your Prelab work.  All in-labs must be completed in the allotted time.

EXAMS 

You will have two exams: a midterm and a final. Practice exam questions will be made available on the CS 200 Website. Exams are closed book, closed notes, closed neighbor, no calculators. The instructor reserves the right to assign a failing semester grade to any student who fails or does not take the final exam. No make-up exams.
 

QUIZZES 

You will take two quizzes this semester during your scheduled lecture time. No make-up quizzes.


 

PROGRAMMING PROJECT 

You will be assigned a programming project where you solve a real world problem. The project will consist of a design phase and an implementation phase. No late projects will be accepted. Each student is responsible for deleting his/her project from lab computers and taking all safeguards to prevent copying of the final project. The instructor has the right to test (written or oral) any student on his/her final project.All projects found to be similar to another student’s project will be given a grade of zero.


 

GRADING 

Approximate weights:

Class participation 5%
 

10% Labs 

15% In-labs

10% Programming project 

5% Quiz #1

10% Quiz #2

20% Midterm Exam

25% Final Exam 

Historically, semester letter grades have been assigned according to the following percentages. 

A 90-100 

B 80-89 

C 70-79 

D 60-69 

E 0-59 

ETHICS 

Any indication of copying or cheating during quizzes/exams, on labs, or on the programming project will result in an immediate zero for the assignment for all parties involved and notification of the student's advisor/department and the Undergraduate Dean. 
 

Computer Science, Illinois Institute of Technology, Fall 2003