About this Course
44,362 recent views

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Beginner Level

English

Subtitles: English

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Beginner Level

English

Subtitles: English

Syllabus - What you will learn from this course

Week
1
10 hours to complete

BASIC PROGRAMMING CONCEPTS

Why program? This lecture addresses that basic question. Then it describes the anatomy of your first program and the process of developing a program in Java using either virtual terminals or a program development environment, with some historical context. Most of the lecture is devoted to a thorough coverage of Java's built-in data types, with example programs for each.

...
4 videos (Total 75 min), 2 readings, 2 quizzes
4 videos
Program development16m
Built-in data types32m
Type conversion10m
2 readings
Supplements for Lecture 110m
Optional Enrichment on Basic Programming Concepts10m
1 practice exercise
Basic Programming Concepts
Week
2
9 hours to complete

CONDITIONALS AND LOOPS

The if, while, and for statements are Java's fundamental control structures. This lecture is built around short programs that use these constructs to address important computational tasks. Examples include sorting, computing the square root, factoring, and simulating a random process. The lecture concludes with a detailed example illustrating the process of debugging a program.

...
5 videos (Total 56 min), 2 readings, 2 quizzes
5 videos
Loops: the while statement11m
An alternative: the for loop6m
Nesting11m
Debugging20m
2 readings
Supplements for Lecture 210m
Optional Enrichment on Conditionals and Loops10m
1 practice exercise
Conditionals and Loops
Week
3
9 hours to complete

ARRAYS

Computing with a large sequence of values of the same type is extremely common. This lecture describes Java's built-in array data structure that supports such applications, with several examples, including shuffling a deck of cards, the coupon collector test for randomness, and random walks in a grid.

...
3 videos (Total 57 min), 2 readings, 2 quizzes
3 videos
Typical array-processing code23m
Two-dimensional arrays16m
2 readings
Supplements for Lecture 310m
Optional Enrichment on Arrays10m
1 practice exercise
Arrays
Week
4
9 hours to complete

INPUT AND OUTPUT

To interact with our programs, we need mechanisms for taking information from the outside world and for presenting information to the outside world. This lecture describes several such mechanisms: for text, drawings, and animation. Detailed examples covered include fractal drawings that model natural phenomena and an animation of a ball bouncing around in the display window.

...
4 videos (Total 49 min), 2 readings, 2 quizzes
4 videos
Standard drawing9m
Fractal drawings10m
Animation6m
2 readings
Supplements for Lecture 410m
Optional Enrichment on Input and Output10m
1 practice exercise
Input and Output
4.9
9 ReviewsChevron Right

Top reviews from Computer Science: Programming with a Purpose

By VSMay 14th 2019

Beautiful course. I am a software developer with 10+ years of experience in programming and have never realized depth of actual MATH behind all that I do. Thank you Robert Sedgewick, you are the BEST.

By BBMar 13th 2019

Excellent course, inface the best I found on any MOOC platform for a complete beginner to Java. Loved it. Would appreciate more coding assignments though. Only week 1 & 2 have those.

Instructors

Avatar

Robert Sedgewick

William O. Baker *39 Professor of Computer Science
Computer Science
Avatar

Kevin Wayne

Phillip Y. Goldman '86 Senior Lecturer
Computer Science

About Princeton University

Princeton University is a private research university located in Princeton, New Jersey, United States. It is one of the eight universities of the Ivy League, and one of the nine Colonial Colleges founded before the American Revolution....

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

More questions? Visit the Learner Help Center.