- Level Foundation
- المدة 18 ساعات hours
- الطبع بواسطة Duke University
-
Offered by
عن
Programming is an increasingly important skill, whether you aspire to a career in software development, or in other fields. This course is the first in the specialization Introduction to Programming in C, but its lessons extend to any language you might want to learn. This is because programming is fundamentally about figuring out how to solve a class of problems and writing the algorithm, a clear set of steps to solve any problem in its class. This course will introduce you to a powerful problem-solving process"the Seven Steps"which you can use to solve any programming problem. In this course, you will learn how to develop an algorithm, then progress to reading code and understanding how programming concepts relate to algorithms.الوحدات
How to Write a Program with the Seven Steps
2
Videos
- Why You Should Learn to Program
- Stepping Through An Algorithm
3
Readings
- Programming: Plan First, Then Code
- Overview of the Seven Steps
- Algorithms
The First Four Steps
1
Assignment
- Steps 1–4
1
Videos
- Testing an Algorithm for a Numerical Sequence
4
Readings
- Step 1: Work an Example Yourself
- Step 2: Write Down What You Just Did
- Step 3: Generalize Your Steps
- Step 4: Test Your Algorithm
Examples
1
Assignment
- Algorithm Practice
5
Videos
- A Pattern of Squares
- Testing a Pattern of Squares
- Drawing a Rectangle
- Closest Point
- Generalizing Closest Point
1
Readings
- A Pattern of Squares
Review
1
Assignment
- Algorithms
1
Readings
- Next Steps
Variables and Expressions
1
Assignment
- Variables and Expressions
3
Videos
- Why You Should Learn to Read Code
- Declaring and Assigning a Variable
- Examples of Expressions
3
Readings
- Declaring a Variable
- Assigning a Variable
- Expressions with Common Operators
Functions
1
Assignment
- Functions
2
Videos
- Using Functions for Abstraction
- Execution of Function Calls
3
Readings
- Anatomy of a Function
- How to Evaluate a Function
- Scope
Printing
1
Assignment
- Printing
1
Videos
- Printing Example
1
Readings
- Printing
Conditional Statements
2
Assignment
- Logical Operators
- Conditional Statements
2
Videos
- Execution of If/Else
- Execution of Switch/Case
4
Readings
- Conditional Statements
- If/Else
- Switch/Case
- Shorthand
Loops
2
Assignment
- While Loops
- Loops
4
Videos
- While Loops
- Equivalent For and While Loops
- Execution of Nested Loops
- Execution of Continue
5
Readings
- Loops for Repetition
- While Loops
- Do/While Loops
- For Loops
- Continue and Break
Review
1
Assignment
- Reading Code
1
Readings
- Higher-level Meaning
Everything Is a Number
1
Assignment
- Decimal, Hex, and Binary
1
Videos
- Introduction to Types
2
Readings
- Converting between Decimal and Binary
- Looking under the Hood
Basic Data Types
1
Assignment
- Basic Data Types
1
Videos
- Types and Formatted Output
5
Readings
- Basic Data Types
- char
- int
- float and double
- Printing redux
Expressions Have Types
1
Assignment
- Expressions Have Types
1
Videos
- Type Conversion
4
Readings
- Expressions Have Types
- Type Conversion
- Casting
- Overflow and Underflow
"Non-numbers"
1
Assignment
- "Non-numbers"
1
Videos
- Everything Is a Number
4
Readings
- "Non-numbers"
- Strings
- Images
- Sound and Video
Complex, Custom Data Types
1
Assignment
- Complex, Custom Data Types
3
Videos
- Struct for a Rectangle
- Uses of Typedef
- Enumerated Types
3
Readings
- Structs
- Typedef
- Enumerated Types
Review
1
Assignment
- Types
1
Videos
- A Duke Software Engineering Student on the Importance of Planning
Introduction
1
Videos
- Importance of Writing a Specific Algorithm
1
Readings
- Sample PB&J Algorithm with Feedback
Assignment
1
Assignment
- Writing a Sorting Algorithm
1
Videos
- Introduction to Sorting
Auto Summary
Programming Fundamentals, offered by Coursera, is a foundational IT & Computer Science course designed to teach essential programming skills applicable to any language. Led by expert instructors, it emphasizes problem-solving through the Seven Steps process and algorithm development. Spanning 1080 minutes, it caters to beginners with subscription options including Starter, Professional, and Paid. Ideal for aspiring software developers or anyone looking to enhance their programming abilities.

Andrew D. Hilton

Genevieve M. Lipp

Anne Bracy