提供方

宾夕法尼亚大学

课程信息

88,680

Computational thinking is the process of approaching a problem in a systematic manner and creating and expressing a solution such that it can be carried out by a computer. But you don't need to be a computer scientist to think like a computer scientist! In fact, we encourage students from any field of study to take this course. Many quantitative and data-centric problems can be solved using computational thinking and an understanding of computational thinking will give you a foundation for solving problems that have real-world, social impact.
In this course, you will learn about the pillars of computational thinking, how computer scientists develop and analyze algorithms, and how solutions can be realized on a computer using the Python programming language. By the end of the course, you will be able to develop an algorithm and express it to the computer by writing a simple Python program.
This course will introduce you to people from diverse professions who use computational thinking to solve problems. You will engage with a unique community of analytical thinkers and be encouraged to consider how you can make a positive social impact through computational thinking.

立即开始，按照自己的计划学习。

根据您的日程表重置截止日期。

建议：4 weeks, 6-8 hours/week...

字幕：英语（English）

Simple AlgorithmPython ProgrammingProblem SolvingComputation

立即开始，按照自己的计划学习。

根据您的日程表重置截止日期。

建议：4 weeks, 6-8 hours/week...

字幕：英语（English）

周

1Computational thinking is an approach to solving problems using concepts and ideas from computer science, and expressing solutions to those problems so that they can be run on a computer. As computing becomes more and more prevalent in all aspects of modern society -- not just in software development and engineering, but in business, the humanities, and even everyday life -- understanding how to use computational thinking to solve real-world problems is a key skill in the 21st century.
Computational thinking is built on four pillars: decomposition, pattern recognition, data representation and abstraction, and algorithms. This module introduces you to the four pillars of computational thinking and shows how they can be applied as part of the problem solving process....

6 个视频 （总计 44 分钟）, 6 个测验

1.2 Decomposition6分钟

1.3 Pattern Recognition5分钟

1.4 Data Representation and Abstraction7分钟

1.5 Algorithms8分钟

1.6 Case Studies11分钟

1.2 Decomposition10分钟

1.3 Pattern Recognition10分钟

1.4 Data Representation and Abstraction15分钟

1.5 Algorithms15分钟

周

2When we use computational thinking to solve a problem, what we’re really doing is developing an algorithm: a step-by-step series of instructions. Whether it’s a small task like scheduling meetings, or a large task like mapping the planet, the ability to develop and describe algorithms is crucial to the problem-solving process based on computational thinking. This module will introduce you to some common algorithms, as well as some general approaches to developing algorithms yourself. These approaches will be useful when you're looking not just for any answer to a problem, but the best answer. After completing this module, you will be able to evaluate an algorithm and analyze how its performance is affected by the size of the input so that you can choose the best algorithm for the problem you’re trying to solve....

7 个视频 （总计 69 分钟）, 10 个测验

2.2 Linear Search5分钟

2.3 Algorithmic Complexity8分钟

2.4 Binary Search11分钟

2.5 Brute Force Algorithms13分钟

2.6 Greedy Algorithms9分钟

2.7 Case Studies12分钟

2.1 Finding the Largest Value10分钟

2.2 Linear Search10分钟

2.3 Algorithmic Complexity10分钟

2.4 Binary Search10分钟

2.5 Brute Force Algorithms15分钟

2.6 Greedy Algorithms10分钟

周

3Computational thinking is a problem-solving process in which the last step is expressing the solution so that it can be executed on a computer. However, before we are able to write a program to implement an algorithm, we must understand what the computer is capable of doing -- in particular, how it executes instructions and how it uses data. This module describes the inner workings of a modern computer and its fundamental operations. Then it introduces you to a way of expressing algorithms known as pseudocode, which will help you implement your solution using a programming language....

6 个视频 （总计 46 分钟）, 10 个测验

3.2 Intro to the von Neumann Architecture8分钟

3.3 von Neumann Architecture Data6分钟

3.4 von Neumann Architecture Control Flow5分钟

3.5 Expressing Algorithms in Pseudocode8分钟

3.6 Case Studies10分钟

3.1 A History of the Computer10分钟

3.2 Intro to the von Neumann Architecture10分钟

3.3 von Neumann Architecture Data10分钟

3.4 von Neumann Architecture Control Flow10分钟

3.5 Expressing Algorithms in Pseudocode10分钟

周

4Writing a program is the last step of the computational thinking process. It’s the act of expressing an algorithm using a syntax that the computer can understand. This module introduces you to the Python programming language and its core features. Even if you have never written a program before -- or never even considered it -- after completing this module, you will be able to write simple Python programs that allow you to express your algorithms to a computer as part of a problem-solving process based on computational thinking....

9 个视频 （总计 91 分钟）, 12 个阅读材料, 12 个测验

4.2 Variables13分钟

4.3 Conditional Statements8分钟

4.4 Lists7分钟

4.5 Iteration14分钟

4.6 Functions10分钟

4.7 Classes and Objects9分钟

4.8 Case Studies11分钟

4.9 Course Conclusion8分钟

Programming on the Coursera Platform10分钟

Python Playground

Variables Programming Activity20分钟

Solution to Variables Programming Activity10分钟

Conditionals Programming Activity20分钟

Solution to Conditionals Programming Activity10分钟

Solution to Lists Programming Assignment5分钟

Solution to Loops Programming Assignment10分钟

Solution to Functions Programming Assignment10分钟

Solution to Challenge Programming Assignment10分钟

Solution to Classes and Objects Programming Assignment10分钟

Solution to Project Part 410分钟

4.2 Variables10分钟

4.3 Conditional Statements5分钟

4.4 Lists10分钟

Lists Programming Assignment15分钟

4.5 Iteration10分钟

Loops Programming Assignment30分钟

4.6 Functions10分钟

Functions Programming Assignment20分钟

(Optional) Challenge Programming Assignment20分钟

4.7 Classes and Objects10分钟

Classes and Objects Programming Assignment20分钟

Project Part 4: Implementing the Solution in Python25分钟

4.8

67 个审阅完成这些课程后已开始新的职业生涯

通过此课程获得实实在在的工作福利

创建者 J•Dec 19th 2018

Excellent course for beginners with enough depth, programming and computational theory to increase their computer science knowledge to a higher level. It builds a good foundation of how computers work

创建者 AA•Feb 4th 2019

The course is very well-designed and it helped me develop understand how to apply computational thinking in solving various types of problems as well as acquire basic skills of programming in Python.

The University of Pennsylvania (commonly referred to as Penn) is a private university, located in Philadelphia, Pennsylvania, United States. A member of the Ivy League, Penn is the fourth-oldest institution of higher education in the United States, and considers itself to be the first university in the United States with both undergraduate and graduate studies. ...

我什么时候能够访问课程视频和作业？

注册以便获得证书后，您将有权访问所有视频、测验和编程作业（如果适用）。只有在您的班次开课之后，才可以提交和审阅同学互评作业。如果您选择在不购买的情况下浏览课程，可能无法访问某些作业。

我购买证书后会得到什么？

您购买证书后，将有权访问所有课程材料，包括评分作业。完成课程后，您的电子课程证书将添加到您的成就页中，您可以通过该页打印您的课程证书或将其添加到您的领英档案中。如果您只想阅读和查看课程内容，可以免费旁听课程。

退款政策是如何规定的？

有助学金吗？

Do I need to know how to program or have studied computer science in order to take this course?

No, definitely not! This course is intended for anyone who has an interest in approaching problems more systematically, developing more efficient solutions, and understanding how computers can be used in the problem solving process. No prior computer science or programming experience is required.

How much math do I need to know to take this course?

Some parts of the course assume familiarity with basic algebra, trigonometry, mathematical functions, exponents, and logarithms. If you don’t remember those concepts or never learned them, don’t worry! As long as you’re comfortable with multiplication, you should still be able to follow along. For everything else, we’ll provide links to references that you can use as a refresher or as supplemental material.

Does this course prepare me for the Master of Computer and Information Technology (MCIT) degree program at the University of Pennsylvania?

This course will help you discover whether you have an aptitude for computational thinking. This is a useful predictor of success in the Master of Computer and Information Technology program at the University of Pennsylvania, which is offered both on-campus and online. In this course you will learn from MCIT instructors and become familiar with the quality and style of MCIT Online courses.

If you have a bachelor's degree and are interested in learning more about computational thinking, we encourage you to apply to MCIT On-campus (http://www.cis.upenn.edu/prospective-students/graduate/mcit.php) or MCIT Online (https://onlinelearning.seas.upenn.edu/mcit/). Please mention that you have completed this course in the application.

Where can I find more information about the Master of Computer and Information Technology (MCIT) degree program at the University of Pennsylvania?

Use these links to learn more about MCIT:

MCIT On-campus: http://www.cis.upenn.edu/prospective-students/graduate/mcit.php

MCIT Online: https://onlinelearning.seas.upenn.edu/mcit/

还有其他问题吗？请访问 学生帮助中心。