Introduction to Programming

COSC 101 - Fall 2025

Instructor

Scott Emrich
Office: 608 Min Kao
Phone: (865) 974-3891; E-mail: semrich at utk.edu
Office hours: TBD, and by appointment

Overview

An introduction to computational thinking and structured programming. Topics include problem solving and algorithm development with emphasis on conditional if/else statements, loop based iteration, and function calls. Students will also be given an overview of commonly used data structures such as arrays. Skills learned include designing a program to solving a problem, developing the algorithms needed, writing code to implement them, testing the code and correcting errors, as well as documenting how the code works.

Text and syllabus

Code HS AP Computer Science A textbook (free and online)

The syllabus can be found here

Draft schedule

Date Topic Homework Notes
8/19/2025 Welcome, What is CS + algorithms "Getting to know you" virtual index cards Worksheet in class
8/21/2025 Variables, types   See video from TA reinforcing IDE walkthrough
8/26/2025 Data types (cont), Operators Hw #1 due
(Canvas upload)
 
8/28/2025 Arithmetic and casting    
9/02/2025 Scanner & I/O Hw #2 due
(Canvas upload)
 
9/04/2025 Code Jam
(graded in-class challenge)
   
9/09/2025 Review & quiz    
9/11/2025 Using switch statements    
9/16/2025 Conditional statements Hw #3 due
(Canvas upload)
 
9/18/2025 Control flow (if/then/else)    
9/23/2025 Loops: while, do while, for    
9/25/2025 Midterm review    
9/30/2025 Midterm    
10/02/2025 Intro to classes and objects: protection, instantiation    
Fall Break! (no classes)
10/09/2025 Classes: methods and fields    
10/14/2025 Method overloading    
10/16/2025 Arrays    
10/21/2025 Code Jam: simple OOP programing
((graded in-class challenge)
   
10/23/2025 In-class: using Arrays for simple things    
10/28/2025 ArrayLists in Java    
10/30/2025 In class: Arrays vs. Arraylists    
11/04/2025 No class: Election day    
11/06/2025 Introduction to algorithm design    
11/11/2025 Guest panel: What I wish I knew in 101 and how to prepare for 202 (GTAs, special guests)    
11/13/2025 Algorithm design (cont): a first look at sorting    
11/18/2025 Peer tips & wins; future survey    
11/20/2025 TBD / catch up    
11/25/2025 Code jam and student-driven final study guide review    
12/02/2025 Study session (optional)    

Academic dishonesty

All are required to abide by the University honor code. Discussions are encouraged, but all answers/programs must be written/developed individually.

Final projects will be performed as a group with peer assessments.