CS 101
Algorithms and Programming I

Description: Basic computer literacy: terminology, system components and operation. Fundamentals of computer programming: top-down structured design, sequence, decision, repetition, syntax, compilation, debugging and maintenance, object-oriented programming with Java, objects, classes, methods, parameters, arrays, layout and style. The emphasis is on an engineering ''right-first-time'' approach to solving problems using computers. Credit units: 4, ECTS Credit units: 7.

Semester: Spring 2013

Text Book: J. Lewis and W. Loftus, Java Software Solutions with MyProgrammingLab: International Edition, 7/E, Pearson Education, 2011.

Section: 01 (Details...)
Instructor: H. Altay Güvenir (Room: EA-418)

Section: 02 (Details...)
Instructor: Hakan Ferhatosmanošlu (Room: EA-412)

Section: 03 (Details...)
Instructor: H. Altay Güvenir (Room: EA-418)

Moodle: Students must log in to SRS and click the Moodle button next to CS101 in order to enroll and gain access the Moodle course page. Students do this once (after which they can log in directly to Moodle). Also, the direct link to Moodle can be used.

The Honor Code Statement must be signed by every student and returned to his/her TA.

If you are not sure about what source code plagiarism is, please read the following paper:
Mike Joy, Georgina Cosma, Jane Yin-Kim Yau, and Jane Sinclair, "Source Code Plagiarism - A Student Perspective",
IEEE Transaction on Education Vol. 15, No. 1, (2011), 125-132.

Weekly Schedule:

  1. Introduction to Computer software and hardware
  2. Getting started to programming, Data and Expressions
  3. Data and Expressions
  4. Data and Expressions
  5. Using Classes and Objects
  6. Using Classes and Objects
  7. Writing Classes
  8. Writing Classes
  9. Conditionals and Loops
  10. Conditionals and Loops
  11. Object-Oriented Design
  12. Object-Oriented Design
  13. Arrays
  14. Arrays

Lab work:

Homework Assigned: April 25, 2013, Due: May 6, 2013 23:59

Midterm Exam: Date and Time: April 20, 2013 (Saturday) 10:00 - 12:30 Rooms: B-Z01, B-Z02, B-Z04, B-Z05, B-Z08, B-204, B-206. Open-book, Open-notes
Final Exam: Date and Time: May 18, 2013 (Saturday), 12:30 - 15:30 Rooms: EB-101, EB-102, EB-103, EB-104, EB-201, EB-202, EB-203, EB-204. Open-book, Open-notes
Make-up: Date and Time: May 10, 2013 (Friday), 13:30 - 15:30 Room: EA-502. Open-book, Open-notes

Grading Policy:
 Lab work:30%
Quizzes:15%
Homework:5%
Midterm Exam:25%
Final Exam:25%

The Minimum Requirement to be able to take the Final Exam:

In order to be able to take the final exam, the value of the following expression has to be at least 30:

0.3 x L + 0.15 x Q + 0.05 x H + 0.25 x M

Here,
 L∈ [0,100]: The average of lab grades
 Q∈ [0,100]: The average quiz grades
 H∈ [0,100]: The homework grade
 M∈ [0,100]: The midterm grade

Important notes:

Useful links: