Skip to main content

Introduction to Computer Science

Prof. Taewhan Kim

Mon, Wed, Thu 9:00-12:00

301-203 (Theory), 301-207 (Practice)

Class Notice

Schedule (TBD)

# Subject Materials
1: 6/27(W) Overview & Introduction
  • Problem solving assignment 1 (due 1-week)
  • 2: 6/28(T) JAVA Inputs/Outputs
    3: 7/2(M) JAVA variables, simple programming
    4: 7/4(W) JAVA conditionals, practice
  • Problem solving assignment 2 (due 1-week)
  • Programming assignment 1 (due 1-week)
  • 5: 7/5(T) Problem solving and JAVA loops, practice
    6: 7/9(M) JAVA programming practice
    7: 7/11(W) Mid-term Exam
  • Programming assignment 2 (due 1-week)
  • 8: 7/12(T) Problem solving and JAVA arrays
    9: 7/16(M) JAVA class basics
    10: 7/18(W) JAVA methods, class instances
  • Programming assignment 3 (due 7/25)
  • 11: 7/19(T) JAVA functions, parameter passing
    12: 7/23(M) JAVA class hierarchy
    13: 7/25(W) JAVA recursion, File IO
    14: 7/26(T) Final Exam -
    End of the class
    15: 7/27(F) Official Final Exam Day -

    *Schedule could be adjusted, materials linked are same as below ones.

    Class Materials

    Lecture Notes

    # Subject Materials
    1 Introduction
    2 Variables & Methods
    3 Branch, Loop and Recursion
    4 Arrays
    5 Vector, String
    6 Class and Class Instance
    7 Class Hierarchy
    8 File I/O

    Practice handouts

    # Date Subject Materials
    To be determined... :)


    Problem Solving Assignment

    # Subject Post Due Handout
    1 TBD :) 6/26 1-week
    2 TBD :) 7/4 1-week

    Programming Assignments

    # Subject Post Due Handout
    1 Easy 7/4 1-week
    2 Moderate 7/11 1-week
    3 Intensive 7/18 7/25


    This course covers two parts: One part is learning basic problem solving techniques that are essential for beginners of studying computer science. It offers, without any prior algorithmic knowledge, how we can view and analyze complex computing or algorithmic problems to find efficient and effective solutions or strategies. The second part is learning JAVA programming language. Step-by-step JAVA programming practice is provided. Starting from a simple task to program, a number of tasks for practicing various JAVA features will be covered. Students who complete this course are able to improve their potential of solving complex computing problems as well as JAVA programming capability.



    Course Evaluation (TBD)

    Class participation: 20%

    - Up to 3 times of missing class is allowed with no penalty
    - But if more than 3 times, grade F will be given.

    Homework: 20%

    - 2 * Basic problem solving assignments
    - 3 * Programming assignments

    Midterm: 30%

    Final: 30%