Introdução à Ciência da Computação com Python Parte 2 (Coursera)

Introdução à Ciência da Computação com Python Parte 2 (Coursera)

Bem vindo ao curso de Introdução à Ciência da Computação destinado aos alunos regulares da Universidade de São Paulo! Esta é a segunda parte do Curso, onde você vai continuar a aprender os principais conceitos introdutórios de Ciência da Computação e também aprenderá a desenvolver pequenos programas na linguagem Python.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

Esta disciplina não possui pré-requisitos; não é esperado que você tenha qualquer experiência prévia em programação; ela exige apenas o conhecimento dos conceitos básicos de matemática do ensino fundamental. No entanto, você deve fazer a primeira parte do Curso (também disponível aqui no Coursera).
O objetivo principal é desenvolver o raciocínio aplicado na formulação e resolução de problemas computacionais, ensinar como abordar e resolver problemas computacionais.
O ato de programar é uma ferramenta útil para trabalhar o raciocínio mencionado acima, bem como tornar mais concretos outros conceitos comuns em ciência da computação.
Ao término do curso, o aluno estará capacitado para escrever pequenos programas em Python e a continuar com estudos mais avançados sobre Python por conta própria usando material disponível na Web. Outra opção é continuar seus estudos conosco fazendo o curso de Laboratório de Programação Orientada a Objetos, também aqui no coursera: Laboratório de Programação Orientada a Objetos - Parte 1
Bom curso!

Syllabus

WEEK 1
Matrizes
Vamos começar a segunda parte do nosso curso aprendendo conceitos e funcionamento de matrizes em Python. Assista as videoaulas e resolva os exercícios com muita atenção ;-)

WEEK 2
Strings, 4 Pequenos Conceitos e Modularização
Sejam bem vindos! Vamos começar estudando um pouco sobre "string”: o que é, como usar e manipulação de strings. Veremos também 4 pequenos conceitos que irão nos ajudar muito na hora de programar. Além disso, a organização do programa ajuda o programador na sua tarefa, deixando o código mais fácil de ser entendido, conferido e arrumado, caso necessário. Para isso, vamos conhecer “modularização”. Bons estudos!

WEEK 3
– POO – Programação Orientada a Objetos
Sejam bem vindos à terceira semana do curso. Vamos estudar agora conceitos sobre programação orientada a objetos. Serão muitos novos conceitos e sua atenção na hora de ver os vídeos e fazer os exercícios será fundamental. Assista os vídeos 1, 2 ou quantas vezes forem necessárias para que você entenda muito bem cada conceito. Bom trabalho!

WEEK 4
Algoritmos de Busca e Ordenação. Complexidade Computacional
Olá! Vimos até agora como armazenar e manipular os dados na memória, usando estruturas como listas e matrizes, na primeira parte do curso. Tão importante quanto saber armazenar os dados é conseguir organizá-los e recuperá-los quando necessário. Nessa semana iremos estudar alguns algoritmos de busca e ordenação. Mãos à obra ;-)

WEEK 5
Algoritmos de Busca e Ordenação. Análise de Desempenho
Legal, estamos chegando no final. Nessa semana iremos ver mais um pouco sobre algoritmos de busca e ordenação, além de testes automatizados. Bom trabalho!

WEEK 6
Recursão
Parabéns! Você chegou na última semana do curso. Nessa semana, iremos aprender sobre recursão e como implementá-la. Bom trabalho ;-)

WEEK 7
Módulo Extra - Usos Avançados

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Algorithmic Thinking (Part 1) (Coursera) Coursera
Rice University

Algorithmic Thinking (Part 1) (Coursera)

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Aug 10th 2026
4 Weeks
Algorithmic Thinking (Part 2) (Coursera) Coursera
Rice University

Algorithmic Thinking (Part 2) (Coursera)

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Aug 10th 2026
4 Weeks
Programming Languages, Part A (Coursera) Coursera
University of Washington

Programming Languages, Part A (Coursera)

This course is an introduction to the basic concepts of programming languages, with a strong emphasis on functional programming. The course uses the languages ML, Racket, and Ruby as vehicles for teaching the concepts, but the real intent is to teach enough about how any language “fits together” to make you more effective programming in any language -- and in learning new ones.

Aug 10th 2026
5-12 Weeks
Global Warming II: Create Your Own Models in Python (Coursera) Coursera
University of Chicago

Global Warming II: Create Your Own Models in Python (Coursera)

This class provides a series of Python programming exercises intended to explore the use of numerical modeling in the Earth system and climate sciences. The scientific background for these models is presented in a companion class, Global Warming I: The Science and Modeling of Climate Change. This class assumes that you are new to Python programming (and this is indeed a great way to learn Python!), but that you will be able to pick up an elementary knowledge of Python syntax from another class or from on-line tutorials.

Aug 10th 2026
5-12 Weeks
Excel/VBA for Creative Problem Solving, Part 2 (Coursera) Coursera
University of Colorado Boulder

Excel/VBA for Creative Problem Solving, Part 2 (Coursera)

Excel/VBA for Creative Problem Solving, Part 2" builds off of knowledge and skills obtained in "Excel/VBA for Creative Problem Solving, Part 1" and is aimed at learners who are seeking to augment, expand, optimize, and increase the efficiency of their Excel spreadsheet skills by tapping into the powerful programming, automation, and customization capabilities available with Visual Basic for Applications (VBA).

Aug 10th 2026
4 Weeks
The Fundamental of Data-Driven Investment (Coursera) Coursera
Sungkyunkwan University - SKKU

The Fundamental of Data-Driven Investment (Coursera)

In this course, the instructor will discuss the fundamental analysis of investment using R programming. The course will cover investment analysis topics, but at the same time, make you practice it using R programming. This course's focus is to train you to do the elemental analysis for investment management that you might need to do in your job every day. Additionally, the study note to do using Python programming will be provided.

Aug 10th 2026
4 Weeks
Approximation Algorithms Part I (Coursera) Coursera
École normale supérieure

Approximation Algorithms Part I (Coursera)

How efficiently can you pack objects into a minimum number of boxes? How well can you cluster nodes so as to cheaply separate a network into components around a few centers? These are examples of NP-hard combinatorial optimization problems. It is most likely impossible to solve such problems efficiently, so our aim is to give an approximate solution that can be computed in polynomial time and that at the same time has provable guarantees on its cost relative to the optimum.

Aug 3rd 2026
5-12 Weeks
Analysis of Algorithms (Coursera) Coursera
Princeton University

Analysis of Algorithms (Coursera)

This course teaches a calculus that enables precise quantitative predictions of large combinatorial structures. In addition, this course covers generating functions and real asymptotics and then introduces the symbolic method in the context of applications in the analysis of algorithms and basic structures such as permutations, trees, strings, words, and mappings.

Aug 3rd 2026
5-12 Weeks
Functional Programming Principles in Scala (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Functional Programming Principles in Scala (Scala 2 version) (Coursera)

Functional programming is becoming increasingly widespread in industry. This trend is driven by the adoption of Scala as the main programming language for many applications. Scala fuses functional and object-oriented programming in a practical package. It interoperates seamlessly with both Java and Javascript. Scala is the implementation language of many important frameworks, including Apache Spark, Kafka, and Akka. It provides the core infrastructure for sites such as Twitter, Tumblr and also Coursera.

Aug 10th 2026
5-12 Weeks
Build LLM Apps with LangChain.js (Coursera) Coursera
DeepLearning.AI

Build LLM Apps with LangChain.js (Coursera)

JavaScript is the world’s most popular programming language, and now developers can program in JavaScript to build powerful LLM apps. This course will show webdevs how to expand their toolkits with LangChain.js, a popular JavaScript framework for building with LLMs, and will cover useful concepts for creating powerful, context-aware applications.

Aug 10th 2026
1 Week