Abstraction, Problem Decomposition, and Functions

  • 4.7
Approx. 17 hours to complete

Course Summary

This course teaches the fundamental concepts of abstraction, problem decomposition, and functions in computer science.

Key Learning Points

  • Learn to write programs using functions, a key concept in computer science
  • Develop skills in problem decomposition and abstraction
  • Build a strong foundation in computer science

Related Topics for further study


Learning Outcomes

  • Understand the importance of abstraction in computer science
  • Develop problem-solving and analytical skills
  • Learn to write programs using functions

Prerequisites or good to have knowledge before taking this course

  • Basic knowledge of programming concepts
  • Familiarity with a programming language such as Python

Course Difficulty Level

Beginner

Course Format

  • Self-paced
  • Online
  • Video lectures

Similar Courses

  • Introduction to Computer Science
  • Programming Foundations with JavaScript, HTML and CSS
  • Python Programming Essentials

Related Education Paths


Notable People in This Field

  • Bjarne Stroustrup
  • Grace Hopper

Related Books

Description

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!

Outline

  • 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

Summary of User Reviews

Learn about abstraction, problem decomposition and functions in this course on Coursera. Students have praised the engaging course materials and practical assignments.

Key Aspect Users Liked About This Course

Engaging course materials

Pros from User Reviews

  • Practical assignments that reinforce the concepts taught
  • Well-structured content that builds upon previous lessons
  • Clear explanations of complex concepts
  • Great for beginners and those with some programming experience

Cons from User Reviews

  • Limited interaction with instructors
  • No hands-on programming experience
  • Some students found the pace too slow
  • Not enough emphasis on real-world applications
  • Some technical issues with the online platform
English
Available now
Approx. 17 hours to complete
Dr. Tim "Dr. T" Chamillard
University of Colorado System
Coursera

Instructor

Share
Saved Course list
Cancel
Get Course Update
Computer Courses