COMP 110-001, Introduction to Programming


  • Monday office hours have been changed to 10am-11am for the rest of the semester.
  • If the course is full and you want to take this class, please use the "waitlist" registration option (see the Registrar's Registration web page) and come to class on the first day. There are typically a lot of drop/adds at the start and so hopefully you will make it in.
  • The first lecture will be held on January 10, 2011.

    Course Description

    This course is an introduction to programming for students with little or no programming experience. There are two primary goals: to learn fundamental programming skills and to learn systematic and logical thinking. Basic programming concepts include: variables, loops, conditionals, arrays, functions, and classes. Basic problem solving approaches include: abstraction, division into sequential pieces, and division into layers. All code is written in the Java programming language.

    This material will be learned through a combination of reading assignments, analysis assignments and program writing. One objective of the course is to further develop your programming skill. There will be 6 - 7 programming assignments. The Friday meetings of this course will usually, but not always, be labs. Bring your laptop on Fridays unless otherwise instructed. Attendance at labs is required.

    The syllabus for this course can be found at

    Guide for How to Succeed in COMP 110


    Book, Course Information, and Prerequisites


    Textbook: Java: An Introduction to Problem Solving & Programming: Fifth Edition
    by Walter Savitch and Frank Carrano, Prentice Hall © 2009,
    ISBN: 0136072259.
    Credit Hours: 3
    Location: SN014 (Sitterson Hall)
    Time: MWF 1:00-1:50PM
    Prerequisite: There are no prerequisite courses. If you have already taken a
    computer programming course, you probably should be
    enrolled in Comp 401.

    Course Instructor

    Instructor: Catie Welsh
    Office: SN311
    Office Hours: M 10am-11am, W 2:00-3:00pm (Held in SN311)

    Honor Code

    Please familiarize yourself with the honor code policy for computer science courses. It can be found at You will be required to complete a signed pledge to hand in with every programming assignment.


    This is a tentative schedule and subject to change as needed.

    Date Lecture Topic(s) Reading Assignment Homework
    M-January 10 Introduction   Homework 0
    W-January 12 Computer Basics
    Designing Programs
    Sections 1.1-1.2 Homework 0 due
    F-January 14 Eclipse
    Java 6.0 Documentation
    Installing Eclipse
    M-January 17 Holiday - No Class    
    W-January 19 Designing Programs Section 1.3 Program 1
    F-January 21   Section 2.1
    Lab 1
    M-January 24 Primitive Types and Strings Sections 2.1-2.2  
    W-January 26 Console I/O
    Sections 2.3-2.4
    Order of Operations
    F-January 28   Section 2.5
    Lab 2
    Lab 1 due
    M-January 31 Review of Chapters 1 & 2 Chapters 1 and 2 Review Worksheet Chapters 1 and 2 Review Worksheet Solutions
    W-February 2 Branching Statements Section 3.1
    Program 2
    Program 2 Tips
    Program 1 due
    F-February 4 Lab 3
    Lab 2 due
    M-February 7 If/Else and Switch Statements Section 3.3  
    W-February 9 Loop Statements Sections 4.1-4.2  
    F-February 11     Lab 3 due
    M-February 14 More Loops  
    W-February 16 Review Loops and Strings
    Strings and Loop Review Worksheet
    Program 3
    Program 2 due
    Strings and Loop Review Worksheet Solutions
    F-February 18     Lab 4
    M-February 21 Classes Section 5.1  
    W-February 23 More Classes In-Class Assignment
    F-February 25
    Lab 5
    Lab 4 due
    M-February 28 Information Hiding and Encapsulation Section 5.2  
    W-March 2 Objects and References Section 5.3 Program 3 due
    F-March 4 Exam Review Practice Midterm
    Practice Midterm Solutions
    Lab 5 Solution
    Lab 5 due
    M-March 7 Spring Break    
    W-March 9 Spring Break    
    F-March 11 Spring Break    
    M-March 14 Midterm Exam    
    W-March 16 Go Over Midterm Exam Midterm Solutions  
    F-March 18     Lab 6
    M-March 21 Constructors and Static Methods Section 6.1-6.2
    W-March 23 Designing and Overloading Methods Sections 6.3-6.4
    F-March 25
    Lab 7
    Lab 6 due
    M-March 28 Arrays Section 7.1-7.3  
    W-March 30 More Arrays
    F-April 1     Lab 8
    Lab 7 due
    M-April 4 Multidimensional Arrays Section 7.5
    Program 4
    W-April 6 Review Arrays
    Lab 7 Comments
    Array Review Worksheet
    Array Review Worksheet Solutions
    Lab 7 Class Solutions
    F-April 8 Help with Program 4   Lab 8 due
    M-April 11 Inheritance Sections 8.1-8.3  
    W-April 13 Inheritance  
    F-April 15 Help with Program 4   Program 4 Early Code Check
    M-April 18 Inheritance and Polymorphism    
    W-April 20 Intro to Search Algorithms Section 7.4  
    F-April 22 Holiday - No Class    
    M-April 25 Review Array/Inheritance Review
    Array/Inheritance Review Solutions
    W-April 27 Final Exam Review Example Exams From the Past
    These exams may cover more material than we did. Do not worry about topics that we did not cover.
    exam 0
    exam 1
    exam 2
    Program 4 due
    F-May 6 Final Exam, 12:00-3:00pm