CSE 121
CSE 121
  • Home / Calendar
  • Syllabus
  • Assignments
  • Resubmissions
  • Exam
  • Getting Help
  • Course Staff
  • Grading Rubrics
  • Resources

  • Course Tools
  • EdStem
  • Grade Calculator
  • Anonymous Feedback
  • Acknowledgements

Introduction to Computer Programming I

Winter 2025

25wi ver.

Note: this is for the Winter 2025 iteration of CSE 121. Looking for a different quarter? Please visit https://courses.cs.washington.edu/courses/cse121/.

Welcome to CSE 121: Introduction to Computer Programming I 🎉

What is this class? What will I learn?

Computing continues to play an ever-increasing role in today’s society. Having an understanding of computing is an essential skill for those in the 21st century; from working in industries more reliant on technology, using computational methods to further scientific understanding, or being an informed citizen in a world with technology all around us.

This course is a first course in computer programming focused on the basics of procedural programming in Java. It assumes students have not taken a previous programming course and do not have substantial other programming experience.

Students with previous experience are encouraged to consider CSE 122 or see the Allen School’s page on introductory courses.

This Week (at a glance)¶

Monday (03/10)

  • Nothing!

Tuesday (03/11)

  • Section 17: TA's Choice!

Wednesday (03/12)

  • Lesson 18: Final Exam Review
    A lecture @ 12:30 in KNE 120; B lecture at 2:30 in GUG 220

Thursday (03/13)

  • Section 18: Final Exam Review; Wrap-Up

Friday (03/14)

  • Lesson 19: Final Exam Review; Victory Lap!
    A lecture @ 12:30 in KNE 120; B lecture at 2:30 in GUG 220

Calendar¶

Pre-Class

Anything listed in the “pre-class” materials (PCMs) for a day should be read before attending class that day. The PCMs are a first introduction to the most important terms and concepts for that day of class. It is okay if the PCMs don’t make complete sense as we have the rest of the class day to clarify the concepts, but if you don’t do the PCMs, the class session won’t make any sense.

Topic Programming / Creative Projects Resubmissions
Week 1
Wed 01/08
LES 00 Course Policies; Hello World!

Note: Normally you would complete the Pre-class Work before class. There is nothing you need to complete before class today!

in-class: materials pdf pptx
resources: recordings
Recordings
  • Lecture A Recording
  • Lecture B Recording
Thu 01/09
SEC 00 Welcome; More Hello World!
resources: materials
Fri 01/10
LES 01 Printing; Strings; Variables
pre-class: materials
in-class: materials pdf pptx
resources: recordings
Recordings
  • Lecture A Recording
  • Lecture B Recording
Released
C0
Hello Bugs
I.S. by 11:59pm PT
Week 2
Tue 01/14
SEC 01 Printing; Strings; Variables
resources: materials extra resources
Extra resources
  • Post-Section Work
Wed 01/15
LES 02 Datatypes; Expressions
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • expressions practice
  • studentVariables
  • logic expressions
Released
P0
Cornbear's Cafe
I.S. by 11:59pm PT
Thu 01/16
SEC 02 Datatypes; Expressions
resources: materials extra resources
Extra resources
  • Post-Section Work
  • Extra Practice: Variables & Expressions
Fri 01/17
LES 03 String Methods; char; More Variables
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • ijk values
  • valuesOfABC
Week 3
Tue 01/21
SEC 03 String Methods; char; More Variables
resources: materials extra resources
Extra resources
  • Post-Section Work
Wed 01/22
LES 04 for Loops
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • finger trap
Released
C1
ASCII Art
I.S. by 11:59pm PT
Thu 01/23
SEC 04 for Loops
resources: materials extra resources
Extra resources
  • Post-Section Work
  • Extra Practice: For Loops
Released
R0
Resub 0
C0, P0 Due 11:59pm PT
Fri 01/24
LES 05 Nested for Loops; Random; Math
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • nested numbers
  • random lines
  • math expressions
Week 4
Tue 01/28
SEC 05 Nested for Loops; Random; Math
resources: materials extra resources
Extra resources
  • Post-Section Work
  • Extra Practice: Nested Loop, Math, Random
Wed 01/29
LES 06 Methods; Parameters; Scope
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • Dollar Figure
  • Dollar Figure 2
  • Strange
Released
P1
Election Simulator
I.S. by 11:59pm PT
Thu 01/30
SEC 06 Methods; Parameters; Scope
resources: materials extra resources
Extra resources
  • Post-Section Work
  • Extra Practice: Methods, Parameters, Returns
Released
R1
Resub 1
C0, P0, C1 Due 11:59pm PT
Fri 01/31
LES 07 Methods; Parameters; Return Values
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • parameter mystery
  • print numbers
  • print square
Week 5
Tue 02/04
SEC 07 Returns
resources: materials extra resources
Extra resources
  • Post-Section Work
Wed 02/05
LES 08 More Methods Practice

Note: No Pre-Class Material for Today!

in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • largest abs val
  • area
  • distance
  • countQuarters
Released
C2
Social Network
I.S. by 11:59pm PT
Thu 02/06
SEC 08 CANCELLED (old Quiz 0)

Note: This was our old Quiz 0 date. Please see Matt's Ed announcement for more details.

resources: extra resources
Extra resources
  • Practice Quiz 0 (Version 0)
  • Practice Quiz 0 (Version 1)
  • Practice Quiz 0 Walkthroughs
Released
R2
Resub 2
C0, P0, C1, P1 Due 11:59pm PT
Fri 02/07
LES 09 Conditionals
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • numUnique
  • if/else simulation
  • xo
  • fibonacci
Week 6
Tue 02/11
SEC 09 Conditionals
resources: materials extra resources
Extra resources
  • Post-Section Work
  • Extra Practice: Conditionals
Wed 02/12
LES 10 while Loops

Note: Today's lecture is shorter because of our mid-quarter feedback session!

pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • diceSum
  • while loop mystery
Thu 02/13
QUIZ 00 RESCHEDULED: Quiz 0: Printing, Datatypes, Expressions, for Loops, Methods, Parameters, Scope
resources: extra resources
Extra resources
  • Practice Quiz 0 (Version 0)
  • Practice Quiz 0 (Version 1)
  • Practice Quiz 0 Walkthroughs
Released
R3
Resub 3
P0, C1, P1, C2 Due 11:59pm PT
Fri 02/14
LES 11 User Input (Scanner)
pre-class: materials
in-class: materials
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • inputBirthday
  • Scanner tokens
  • repeat
Released
P2
Prioritizing Patients
I.S. by 11:59pm PT
Week 7
Tue 02/18
SEC 11 while Loops, Scanner (User Input)
resources: materials extra resources
Extra resources
  • Post-Section Work
  • Extra Practice: While Loops & User Input
Wed 02/19
LES 12 Putting It All Together

Note: No Pre-Class Material for Today!

in-class: materials pdf pptx
resources: recordings
Recordings
  • Lecture A Recording
  • Lecture B Recording
Thu 02/20
QUIZ 01 Quiz 1: for loops, Random, Math, Methods, Parameters, Returns, Conditionals, while Loops
resources: extra resources
Extra resources
  • Practice Quiz 1 (Version 0)
  • Practice Quiz 1 (Version 1)
  • Practice Quiz 1 Walkthroughs
Released
R4
Resub 4
C1, P1, C2 Due 11:59pm PT
Fri 02/21
LES 13 Arrays
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • numbersElements
  • declareArray
  • printElements
  • oddsArray
Week 8
Tue 02/25
SEC 13 Arrays
resources: materials extra resources
Extra resources
  • Worksheet
  • Post-Section Work
  • Extra Practice: Arrays
Wed 02/26
LES 14 Reference Semantics
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • print backwards
  • all less
  • traversal
  • reference mystery
Released
C3
Dance Dance Arrayvolution
I.S. by 11:59pm PT
Thu 02/27
SEC 14 Reference Semantics
resources: materials extra resources
Extra resources
  • Worksheet
  • Post-Section Work
Released
R5
Resub 5
P1, C2, P2 Due 11:59pm PT
Fri 02/28
LES 15 2D Arrays
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • arrayMystery2d
  • isMagicSquare
Week 9
Tue 03/04
SEC 15 2D Arrays
resources: materials extra resources
Extra resources
  • Worksheet
  • Post-Section Work
  • Extra Practice: 2D Arrays
Wed 03/05
LES 16 Array Patterns (Guest Lecture!)
pre-class: materials
in-class: materials pdf pptx
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • longest sorted sequence
  • collapse
  • min gap
Released
P3
2DNArray Sequencing
I.S. by 11:59pm PT
Thu 03/06
QUIZ 02 Quiz 2: Conditionals, while Loops, User Input (Scanner), Arrays, Reference Semantics
resources: extra resources
Extra resources
  • Practice Quiz 2 (Version 0)
  • Practice Quiz 2 (Version 1)
  • Practice Quiz 2 Walkthroughs
Released
R6
Resub 6
C2, P2, C3 Due 11:59pm PT
Fri 03/07
LES 17 Wrapping Up Arrays!

Note: No Pre-Class Material for Today!

in-class: materials pdf pptx
resources: recordings
Recordings
  • Lecture A Recording
  • Lecture B Recording
Week 10
Tue 03/11
SEC 17 TA's Choice!
Wed 03/12
LES 18 Final Exam Review

Note: No Pre-Class Material for Today!

in-class: pdf pptx Programming Problem
resources: recordings extra resources
Recordings
  • Lecture A Recording (with Maitreyi)
  • Lecture B Recording (with Judy)
Extra resources
  • insertMiddle Scan (from Maitreyi, A Section)
  • insertMiddle Scan (from Judy, B Section)
  • insertMiddle Solution (from Mattt)
Thu 03/13
SEC 18 Final Exam Review; Wrap-Up
resources: materials extra resources
Extra resources
  • Worksheet
  • Post-Section Work
Released
R7
Resub 7
C0-P3 (ALL!) Due 11:59pm PT
Fri 03/14
LES 19 Final Exam Review; Victory Lap!

Note: No Pre-Class Material for Today!

in-class: materials pdf pptx Review Problem
resources: recordings extra resources
Recordings
  • Lecture A Recording
  • Lecture B Recording
Extra resources
  • Bonus Pi Day Treat
  • Review Problem Scans
Week 11
Tue 03/18
EXAM Final Exam 12:30pm - 2:20pm

Note: Located in KNE 130 and KNE 220.

Wed 03/19 Finals Week
Thu 03/20 Finals Week
Fri 03/21 Finals Week

Search

Search the class website; related sections and pages will appear below. Note: this search is not as forgiving with typos as other search engines.