EdX

Introduction to Programming in C++ (edX)

Offered by New York University, NYUx,
Introduction to Programming in C++ (edX)

Learn the fundamentals of programming in the C++ programming language, including iteration, decision branching, data types and expression. This is the 1st course in the intermediate, undergraduate-level offering that makes up the larger Programming and Data Structures MicroBachelors program.

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

We recommend taking them in order, unless you have a background in these areas already and feel comfortable skipping ahead.

These topics build upon the learnings that are taught in the introductory-level Computer Science Fundamentals MicroBachelors program, offered by the same instructor.
This is a self-paced course that provides an introduction to the C++ programming language. Among the topics covered is the development of command-line programs that utilize different data types, expressions, decision branching, and iteration to solve problems. Students learn to program in C++ through the lectures and the labs. C++ programming material is presented over eight weeks of interactive lectures with weekly quizzes to assess your understanding of the material Students will experience hands-on practice writing C++ programs through ten lab challenges.
Students will experience the development cycle by compiling their C++ programs from human-readable source code to machine-readable object code. They will then link their objects to create an executable that can be run interactively.
This course is part of the Programming & Data Structures MicroBachelors® Program.

What you'll learn

  • analyze C++ assignments and apply its components in program development
  • apply basic C++ I/O operations with different data types
  • design C++ expressions using arithmetic operations (including understanding their limitations, such as integer truncation, round-off error, division by zero, narrowing and widening conversions, casting, precedence, and standard math library functions)
  • design C++ expressions using relational operators (including understanding floating point equality)
  • design C++ expressions using logical operators (including short-circuit)
  • design C++ selection statements (including nested selection)
  • design C++ repetition statements (including count-controlled versus event-controlled, sentinel-controlled)

Syllabus

Wk 1 - Hello World
First C++ Program

Wk 2 - Data Types and Expressions

  • Type Casting
  • ASCII
  • Literals
  • The String Class
  • Boolean Expression

Wk 3 - Data Type Labs

Wk 4 - Branching Statements

  • Absolute Value
  • One-Way if Statements
  • Switch Statements

Wk 5 - Branching Labs

Wk 6 - Iterative Statements & Functions

  • Syntax
  • pigeonhole principle
  • function definition
  • domain, target, range
  • one-to-one and onto functions

-composition of functions

  • inverse function

Wk 7 - Iteration Labs

Wk 8 - Final Exam

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

Related Courses

Introducción a la programación en Java: escribiendo buen código (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introducción a la programación en Java: escribiendo buen código (edX)

¡Aprende programación en Java de forma fácil e interactiva y entra en el fascinante mundo de la computación! Este es un curso introductorio para aprender a programar en Java diseñado para enseñar a escribir "buen" código en este lenguaje de programación, entendiendo como "bueno" aquel que es correcto y eficiente.

Self Paced
Self-Paced
How to Code: Simple Data (edX) EdX
The University of British Columbia,UBCx

How to Code: Simple Data (edX)

Learn systematic program design - how to write programs that tell a clear story about what they do, are well-tested, and easy to improve. This programming course takes a unique approach, as it focuses on learning a systematic programming method rather than a programming language. This practical approach will help you channel your creativity so that you can program well in any language.

Self Paced
Self-Paced
LAFF – On Programming for Correctness (edX) EdX
University of Texas at Austin,UTAustinX

LAFF – On Programming for Correctness (edX)

Learn to apply formal methods to systematically develop correct, loop-based programs, an essential skill for computer programmers. Is my program correct? Will it give the right output for all possible permitted inputs? Computers are now essential in everyday life. Incorrect programs lead to frustration in the best case and disaster in the worst. Thus, knowing how to construct correct programs is a skill that all who program computers must strive to master.

Self Paced
Self-Paced
Deploying TinyML (edX) EdX
HarvardX,Harvard University

Deploying TinyML (edX)

Learn to program in TensorFlow Lite for microcontrollers so that you can write the code, and deploy your model to your very own tiny microcontroller. Before you know it, you’ll be implementing an entire TinyML application. Have you wanted to build a TinyML device? In Deploying TinyML, you will learn the software, write the code, and deploy the model to your own tiny microcontroller-based device. Before you know it, you’ll be implementing an entire TinyML application.

Self Paced
Self-Paced
Python for Data Science (edX) EdX
University of California, San Diego,UC San DiegoX

Python for Data Science (edX)

Learn to use powerful, open-source, Python tools, including Pandas, Git and Matplotlib, to manipulate, analyze, and visualize complex datasets. In the information age, data is all around us. Within this data are answers to compelling questions across many societal domains (politics, business, science, etc.). But if you had access to a large dataset, would you be able to find the answers you seek?

Self Paced
Self-Paced
Introduction to Java Programming: Starting to code in Java (edX) EdX
Universidad Carlos III de Madrid - UC3M,UC3Mx

Introduction to Java Programming: Starting to code in Java (edX)

Learn to program with Java in an easy and interactive way! In this introductory Java programming course, you will be introduced to powerful concepts such as functional abstraction, the object oriented programming (OOP) paradigm and Application Programming Interfaces (APIs). Examples and case studies will be provided so that you can implement simple programs on your own or collaborate with peers.

Self Paced
Self-Paced
IoT System Design: Software and Hardware Integration (edX) EdX
Waseda University,WasedaX

IoT System Design: Software and Hardware Integration (edX)

Start developing your own Internet of Things (IoT) system with this exploration of the interaction between software and hardware. This course is designed to teach you how systems are developed using IoT technology. Many engineers and developers tend to focus on a single discipline - either software or hardware. However, in today’s connected age it's critical to have a comprehensive understanding of both disciplines and how they are intertwined.

Self Paced
Self-Paced
Computing in Python IV: Objects & Algorithms (edX) EdX
Georgia Institute of Technology,GTx

Computing in Python IV: Objects & Algorithms (edX)

Learn about recursion, search and sort algorithms, and object-oriented programming in Python. Complete your introductory knowledge of computer science with this final course on objects and algorithms. Now that you've learned about complex control structures and data structures, learn to develop programs that more intuitively leverage your natural understanding of problems through object-oriented programming. Then, learn to analyze the complexity and efficiency of these programs through algorithms. In addition, certify your broader knowledge of Introduction to Computing with a comprehensive exam.

Self Paced
Self-Paced
Laboratorio di Programmazione (edX) EdX
University of Naples Federico II,FedericaX

Laboratorio di Programmazione (edX)

Impara a risolvere problemi complessi attraverso l'uso del computer e avvicinati alla magia degli algoritmi. Il linguaggio di programmazione è uno degli strumenti che abbiamo per interpretare e risolvere i problemi di tutti i giorni. Un linguaggio che è alla base di problemi comuni, come le previsioni del tempo o l'analisi della deformazione di una struttura di un'auto in un incidente stradale.

Self Paced
Self-Paced