CS 101 Algorithms and Programming I Fall 2024
Sections 1 & 2: Ugur Dogrusoz, EA-522, Office Hours: Tue, Thu AM
Section 3: Lori Russell-Dağ Section specific material is on Moodle

Announcements
  • Midterm exam will cover all topics up to and including Static Methods (Chapter 5).
  • Sections 1 & 2 will utilize the spare hour regularly; so show up accordingly unless stated otherwise.
  • HONOR CODE: All students must fully read and comply with THIS to avoid disciplinary action.
  • We plan to take attendance on a regular basis in this course.
  • Check here at least once a week!
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 large problems using computers.

SYLLABUS     MOODLE
Textbook Cay S. Horstmann, Big Java: Late Objects, Enhanced eText, 2nd Edition, Wiley, October 2016.
Outline &
Slides
WeekDatesConcepts / Slides TextbookLab
1Sep 16-Course Introduction,
Algorithms & Computers
Ch 1No labs
HW1 assigned
2Sep 23-Java &
Fundamental Data Types
Ch 2No labs
HW1 due
3Sep 30-Input/Output, and Assignment Ch 201 - Setting up & using a Java IDE, Java basic programs & debugging
4Oct 7-Decision Ch 302 - I/O, Assignment
5Oct 14-Decision & Repetition Ch 403 - if statements
6Oct 21-Repetition Ch 404 - Repetition: while loops
7Oct 28-Methods Ch 5No labs
8Nov 4-Methods Ch 505 - Repetition: for & do-while
9Nov 11- Arrays Ch 6 06 - Static methods
MIDTERM
HW2 assigned
10Nov 18-ArrayLists Ch 6 No labs
11Nov 25- Partially-filled arrays Ch 6 07 - Collections using ArrayLists and Arrays
HW2 due
12Dec 2-OOP, writing classes Ch 8 08 - Objects & Classes
13Dec 9-OOP, writing classes &
object/ref
Ch 8 09 - Object & Reference
14Dec 16-Searching & Sorting Ch 6 &
Ch 14.1
No labs
15Dec 23-Review -No labs
Grading
Component Weight Date/Due
Homework 05 as announced (2-3 of them)
Quiz 10 pop-quizzes during lectures (5-10 of them)
Lab exam 15 see Outline
Midterm 35 Nov 16, 15:00, EE 03,04,214,412
Final 35 Jan 4, 12:00, EE 03,04,214,412
Warning: Students will receive an Fz grade unless they have a minimum 40% on the midterm exam AND a minimum 65% lab average AND a minimum score of 51% on the homework assignments.
Attendance Attendance will be taken on a regular basis but will not directly count towards your grade.
Exams There will be two written examinations: one midterm and a final. Exams are closed-book. No computers, notes, phones, dictionaries, etc., will be allowed.
Quizzes There will be in-class, relatively short pop quizzes throughout the semester. Those who show up more than 10 minutes later than the start of the lecture will not be allowed to take these quizzes.
Homework & Labs Homework & Lab assignments will be assigned and submitted via Moodle. No late submissions are accepted!

There will be some homework assignments during the semester. The first one will be on setting up a proper computer and programming environment so that lab assingments and other programming exercises can be conducted in a proper manner. This specifically includes Visual Studio Code and Java Setup.

All students are expected to attend the weekly lab sessions and complete the assigned exercises as described in this lab guide. Lab seating will be as given here.

Before each lab on Mondays (18:00-20:00, B-201/2), we will hold tutorial sessions. This is where you can get help from more senior students as described in this tutorial guidelines document.
Remarks & Resources

  • HONOR CODE: All students must fully read and comply with THIS to avoid disciplinary action.
  • CS101 coding style and grading guidelines
  • The instructors might have to make changes to any future lecturing or assesment instruments during the semester, due to extraordinary circumstances (e.g., a pandemic).
  • No makeups will be given for labs, quizzes or homework. Please see your instructor if you have a medical report or a similar official excuse.
  • What (not) to do when studying CS? Advice from a CS professor