Coursera
Coursera Logo

University of Colorado Boulder - Abstraction, Problem Decomposition, and Functions 

  • Offered byCoursera
  • Public/Government Institute

Abstraction, Problem Decomposition, and Functions
 at 
Coursera 
Overview

Duration

17 hours

Total fee

Free

Mode of learning

Online

Difficulty level

Beginner

Official Website

Explore Free Course External Link Icon

Credential

Certificate

Abstraction, Problem Decomposition, and Functions
Table of content
Accordion Icon V3
  • Overview
  • Highlights
  • Course Details
  • Curriculum

Abstraction, Problem Decomposition, and Functions
 at 
Coursera 
Highlights

  • Earn a shareable certificate upon completion.
  • Flexible deadlines according to your schedule.
Details Icon

Abstraction, Problem Decomposition, and Functions
 at 
Coursera 
Course details

Skills you will learn
More about this course
  • This course is the third course in the specialization exploring both computational thinking and beginning C programming. Rather than trying to define computational thinking, we'll just say it's a problem-solving process that includes lots of different components. Most people have a better understanding of what beginning C programming means!
  • This course assumes you have the prerequisite knowledge from the previous two courses in the specialization. You should make sure you have that knowledge, either by taking those previous courses or from personal experience, before tackling this course. The required prerequisite knowledge is listed below.
  • Prerequisite computational thinking knowledge: Algorithms and procedures and data collection, analysis, and representation
  • Prerequisite C knowledge: Data types, variables, constants; STEM computations; selection; and iteration (looping)
  • Throughout this course the computational thinking topics you'll explore are abstraction, which is deciding which details matter for the problem you're trying to solve, and problem decomposition, which is about breaking large problems into smaller sub-problems to handle complexity. For the programming topics, you'll continue building on your C knowledge by practicing using arrays, which let you store multiple values in a single variable, and strings, which are arrays of characters. You'll also learn how to implement functions, which are the mechanism we use for problem decomposition in our C programs.
  • Module 1: Learn about arrays as a way to store multiple values in a single variable
  • Module 2: Discover how we store and process strings (arrays of characters)
  • Module 3: Explore abstraction and problem decomposition
  • Module 4: Use functions to implement problem decomposition in your code
Read more

Abstraction, Problem Decomposition, and Functions
 at 
Coursera 
Curriculum

Arrays

Course Introduction

Navigating a Coursera Course

Meet the Instructor (optional)

Lesson Introduction

Intro to Arrays

Initializing an Array

Why We Start at Zero

How Big Is an Array?

Run-Time Array Size with Pointers

Processing an Array

Multi-Dimensional Arrays

Matrix Multiplication

Exercise 1: Min and Max

Arrays Lecture Code

An Array of Cards Solution

Strings

Lesson Introduction

String Basics

String Length

Searching a String

String Input

Converting Strings to Numbers

CSV String Processing

The Caesar Cipher Revisited

Exercise 2: Full Caesar Cipher

Strings Lecture Code

Junior Codebreaker Solution

Abstraction and Problem Decomposition

Lesson Introduction

Rock and Roll

What Is a Chair?

Network Layers

Abstraction in Code

Lesson Introduction

Going Green

Building a Chair

Designing a Car

Abstraction Exercise: What's an Apple?

Abstraction Topic Understanding Check

Abstraction and Problem Decomposition Practice Quiz

Abstraction and Problem Decomposition Graded Quiz

Functions

Lesson Introduction

Intro to Functions

Returning Data From a Function

Passing Data Into a Function

Getting Valid User Input

Changing Parameter Values

Nesting and Boxes Revisited

Finishing Up

Exercise 3: Functional Caesar Cipher

Functions Lecture Code

Height Statisticamator Solution

Other courses offered by Coursera

– / –
3 months
Beginner
– / –
20 hours
Beginner
– / –
2 months
Beginner
– / –
3 months
Beginner
View Other 6726 CoursesRight Arrow Icon
qna

Abstraction, Problem Decomposition, and Functions
 at 
Coursera 

Student Forum

chatAnything you would want to ask experts?
Write here...