Principles of Computing (Part 2)
About this Course
This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating efficient and well-structured solutions for computational problems. To get hands-on experience working with these concepts, we will use the Python programming language. The main focus of the class will be weekly mini-projects that build upon the mathematical and programming principles that are taught in the class. To keep the class fun and engaging, many of the projects will involve working with strategy-based games. In part 2 of this course, the programming portion of the class will focus on concepts such as recursion, assertions, and invariants. The mathematical portion of the class will focus on searching, sorting, and recursive data structures. Upon completing this course, you will have a solid foundation in the principles of computation and programming. This will prepare you for the next course in the specialization, which will begin to introduce a structured approach to developing and analyzing algorithms. Developing such algorithmic thinking skills will be critical to writing large scale software and solving real world computational problems.Created by: Rice University
![](https://d3njjcbhbojbot.cloudfront.net/api/utilities/v1/imageproxy/https://coursera-course-photos.s3.amazonaws.com/8c/b26af09dd711e4886e2164b7061689/principles_of_computing_final.jpg?auto=format%2Ccompress&dpr=1&w=300&h=300&fit=crop)
Related Online Courses
In this course you will explore concepts and approaches involved in creating successful character designs that can be applied to video games. Following a first week delving into some foundational... more
\"International Communication and East Asian Affairs: International News Practice\" is an online course offered by the Graduate Institute of Journalism, National Taiwan University, in collaboration... more
This is a self-paced lab that takes place in the Google Cloud console. In this lab you will deploy a monolithic application to a Google Kubernetes Engine cluster, then break it down into... more
Discover the transformative potential of Generative AI in the marketing landscape. This course offers an introduction to generative AI and explores its unique capabilities in the context of... more
As a Java backend developer, why is it important to use rest endpoint? REST is a logical choice for building APIs that allow users to connect to, manage and interact with cloud services flexibly in... more