We may earn an affiliate commission when you visit our partners.
Course image
Jamila Sam and Jean-Cédric Chappelier

Ce cours initie aux bases de la programmation en utilisant le langage C++ : variables, boucles, fonctions, ...

Il ne présuppose pas de connaissance préalable. Les aspects plus avancés (programmation orientée objet) sont donnés dans un cours suivant, «Introduction à la programmation orientée objet (en C++)».

Il s'appuie sur de nombreux éléments pédagogiques : vidéos sous-titrées, quizz dans et hors vidéos, exercices, devoirs notés automatiquement, notes de cours.

Enroll now

What's inside

Syllabus

Initiation à la programmation
Cette semaine vous accueille dans le cours et vous présente les premiers concepts de base de la programmation.
Read more
Structures de contrôle (1) : branchements conditionnels
Nous abordons cette semaine, et continuerons la semaine prochaine, les « structures de contrôle » qui permettent de décrire comment certaines données peuvent influencer les traitements à effectuer. Nous commençons par les « branchements conditionnels » grâce auxquels une portion de programme peut être exécutée ou non suivant différents tests.
Structures de contrôle (2) : boucles et itérations
Cette semaine, nous terminons la présentation des « structures de contrôle » avec les boucles et les itérations qui permettent de faire répéter certaines parties d'un programme.
Fonctions
Cette semaine aborde un sujet fondamental en programmation : les « fonctions » qui permettent de beaucoup mieux structurer les programmes et d'éviter d'avoir à récrire plusieurs fois la même portion de code.
Tableaux
Après plusieurs semaines sur les traitements, nous revenons cette semaine et les suivantes sur les données pour présenter des types de données plus avancés que les types de base. Cette semaine : les tableaux qui permettent de regrouper plusieurs données de même type.
Chaînes de caractères et structures
Après les tableaux, cette semaine continue la présentation de nouveaux types de données avec les « chaînes de caractères », ensembles de lettres, et les « structures », regroupement de données devant logiquement aller ensemble.
Pointeurs et références
Cette semaine nous terminons notre présentation de nouveaux types de données avec les « pointeurs » et « références » qui permettent de faire référence à d'autres données existantes ou d'en créer de nouvelles dynamiquement.
Etude de cas
Nous voulons terminer notre cours avec une étude de cas, la création d'un jeu de « Puissance 4 », nous permettant de revoir tous les concepts abordés au long du cours. Nous en profitons pour présenter un dernier type de données : le type « énuméré ».

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Introduces the fundamentals of programming, including variables, loops, and functions, making it suitable for absolute beginners
Covers essential programming concepts, such as conditional statements, loops, and functions, which are foundational for further programming study
Emphasizes practical application through numerous exercises, quizzes, and graded assignments, allowing learners to apply their understanding
Taught by reputable instructors with expertise in programming, ensuring high-quality content and guidance
Provides a solid foundation for learners interested in pursuing further studies in object-oriented programming
Utilises a multi-modal approach with videos, readings, and interactive materials, catering to diverse learning styles

Save this course

Save Initiation à la programmation (en C++) to your list so you can find it easily later:
Save

Reviews summary

Highly rated c++ basics

Initiation à la programmation (en C++) provides a solid foundation in C++ programming, receiving an overwhelming number of positive reviews from learners. Its structured and comprehensive approach makes it suitable for both beginners and those looking to enhance their C++ knowledge. However, a minority of reviews find the exercises challenging.
Concepts are explained in a clear and engaging manner.
"Les explications sont détaillées ..."
"Les explications des trois enseignants sont excellentes."
"C'est très bien expliqué"
Provides a comprehensive overview of C++ basics.
"This a great programming course."
"For : Le cours balaie toutes les notions de base."
"Un excellent cours pour débuter en C++"
Exercises can be demanding, requiring critical thinking and problem-solving skills.
"Les exercices sont flous, très dirigés ..."
"This a great programming course ... I did find the programming assignments a bit more difficult than I anticipated."
"Les vidéos sont en grande partie intéressantes ... Cependant les exercices ...... Franchement ridicule"

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Initiation à la programmation (en C++) with these activities:
Review C++ basics
Solidify your foundation in C++ by reviewing its core concepts and syntax before starting the course.
Show steps
  • Go over your notes from previous programming courses (if applicable).
  • Read introductory C++ tutorials or documentation.
  • Practice writing simple C++ programs.
  • Review online resources or videos to reinforce your understanding.
Practice basic programming concepts
Sharpen your programming skills by practicing basic concepts such as variables, loops, and functions before diving into C++.
Browse courses on Programming
Show steps
  • Review the basics of programming concepts.
  • Solve simple programming problems using any programming language you are familiar with.
  • Implement data structures such as arrays, lists, and dictionaries.
  • Practice writing functions and understanding their purpose.
  • Test your code and debug any errors.
Join a C++ study group or online forum
Engage with your peers to clarify concepts, share knowledge, and receive feedback on your understanding of C++.
Show steps
  • Find an online forum or study group dedicated to C++.
  • Introduce yourself and share your learning goals.
  • Actively participate in discussions.
  • Ask questions and provide insights to help others.
  • Seek feedback on your code or understanding of concepts.
Three other activities
Expand to see all activities and additional details
Show all six activities
Follow C++ tutorials and workshops
Supplement your learning by following guided tutorials and workshops to deepen your understanding of specific C++ topics.
Show steps
  • Identify areas where you need additional support.
  • Search for high-quality C++ tutorials or workshops.
  • Follow the tutorials or participate in the workshops.
  • Take notes and ask questions to clarify concepts.
  • Practice applying what you've learned in the tutorials or workshops.
Solve C++ coding problems
Practice solving C++ coding problems to reinforce your understanding of the language's syntax and core concepts.
Show steps
  • Find online C++ coding platforms or problem sets.
  • Select a problem that aligns with the concepts covered in the course.
  • Attempt to solve the problem on your own.
  • Review solutions and explanations to enhance your understanding.
  • Repeat steps 2-4 for different problems to strengthen your skills.
Develop a C++ project
Apply your C++ skills by creating a project that demonstrates your understanding of the language's capabilities.
Show steps
  • Brainstorm ideas for a project that aligns with your interests and the course content.
  • Plan the structure and design of your project.
  • Implement the project using C++.
  • Test and debug your project to ensure it functions correctly.
  • Document your project and share it with others to showcase your skills.

Career center

Learners who complete Initiation à la programmation (en C++) will develop knowledge and skills that may be useful to these careers:
Game Developer
Game Developers design, create and maintain video games. They work with user experience (UX) designers, artists, and other stakeholders to create games that are fun, engaging, and successful. Programming is at the heart of game development, with game developers using it to create the game's logic, physics, graphics, and more. This course may be useful as a foundation for game development, as it introduces essential programming concepts and uses C++, a popular language for game development.
Machine Learning Engineer
Machine Learning Engineers design, create, and maintain machine learning models. They work with data scientists and other stakeholders to develop and deploy models that can solve real-world problems. A strong foundation in programming is essential for machine learning engineers, as they need to be able to implement and evaluate machine learning algorithms. This course may be useful as a foundation for machine learning engineering, as it introduces essential programming concepts and uses C++, a language used for machine learning.
Natural Language Processing Engineer
Natural Language Processing Engineers design, create, and maintain natural language processing systems. They work with data scientists and other stakeholders to develop and deploy systems that can understand and generate human language. A strong foundation in programming is essential for natural language processing engineers, as they need to be able to implement and evaluate natural language processing algorithms. This course may be useful as a foundation for natural language processing engineering, as it introduces essential programming concepts and uses C++, a language used for natural language processing.
Robotics Engineer
Robotics Engineers design, create, and maintain robots. They work with mechanical engineers and other stakeholders to develop and deploy robots that can perform a variety of tasks, from manufacturing to healthcare. A strong foundation in programming is essential for robotics engineers, as they need to be able to implement and evaluate robotics algorithms. This course may be useful as a foundation for robotics engineering, as it introduces essential programming concepts and uses C++, a language used for robotics.
Mobile Developer
Mobile Developers design, create and maintain mobile apps. They work with user experience (UX) designers, product managers and other stakeholders to create apps that are useful, engaging, and successful. A strong knowledge of programming languages is key for app development, as mobile apps require their own unique code. This course can help build a foundation for mobile app development, particularly in working with mobile operating systems.
Computer Vision Engineer
Computer Vision Engineers design, create, and maintain computer vision systems. They work with data scientists and other stakeholders to develop and deploy systems that can interpret and understand visual data. A strong foundation in programming is essential for computer vision engineers, as they need to be able to implement and evaluate computer vision algorithms. This course may be useful as a foundation for computer vision engineering, as it introduces essential programming concepts and uses C++, a language used for computer vision.
Embedded Systems Engineer
Embedded Systems Engineers design, create, and maintain embedded systems. They work with hardware engineers and other stakeholders to develop and deploy systems that are embedded in devices such as cars, medical devices, and industrial machinery. A strong foundation in programming is essential for embedded systems engineers, as they need to be able to implement and evaluate embedded systems algorithms. This course may be useful as a foundation for embedded systems engineering, as it introduces essential programming concepts and uses C++, a language used for embedded systems.
Data Scientist
Data Scientists use their knowledge of programming and statistics to extract insights from data. They work with large datasets to identify trends, patterns, and correlations. A strong foundation in programming is essential for data scientists, as they need to be able to clean, manipulate, and analyze data. This course can help build a foundation for data science, as it introduces essential programming concepts and uses C++, a language used for data analysis.
Quality Assurance Analyst
Quality Assurance Analysts test and evaluate software to ensure that it meets the requirements and specifications. They work with developers and other stakeholders to identify and fix bugs. A strong foundation in programming is essential for quality assurance analysts, as they need to be able to understand the code they are testing and to develop test cases. This course may be useful as a foundation for quality assurance, as it introduces essential programming concepts and uses C++, a language used in many technical fields.
Web Developer
Web Developers design, create and maintain websites. They may also work on mobile apps, as well as desktop applications and software. As websites and software continue to advance, a deep understanding of programming is essential, whether you work on the front-end or the back-end. This course can help you build a foundation for web development, especially with regard to server-side programming.
Software Developer
Software Developers use their knowledge and skill with programming languages and tools to build and maintain computer software and applications. They may work on a variety of projects ranging from websites and mobile apps to enterprise systems and operating systems. Since this course uses C++, a powerful language for operating systems, game development, and desktop apps, it may prove useful as foundational knowledge.
Computer Science Teacher
Computer Science Teachers educate students about the fundamentals of computer science, including programming, algorithms, and data structures. They may also teach students about the ethical and societal implications of computing. A strong foundation in programming is essential for computer science teachers, as they need to be able to teach students how to program and to understand the concepts behind programming. This course may be useful as a foundation for teaching computer science, as it introduces essential programming concepts and uses C++, a popular language for teaching computer science.
Technical Writer
Technical Writers create and maintain technical documentation, such as user manuals, white papers, and help files. They work with engineers, scientists, and other stakeholders to translate complex technical information into clear and concise language. A strong foundation in programming is essential for technical writers, as they need to be able to understand the technical concepts behind the products and services they are writing about. This course may be useful as a foundation for technical writing, as it introduces essential programming concepts and uses C++, a language used in many technical fields.
Product Manager
Product Managers are responsible for the development and launch of new products or features. They work with engineers, designers, and other stakeholders to define the product vision, roadmap, and requirements. A strong foundation in programming is not always required for product managers, but it can be helpful, especially for those who want to work on technical products or features. This course may be useful as a foundation for product management, as it introduces essential programming concepts and uses C++, a language used in many technical fields.
Business Analyst
Business Analysts help businesses to improve their operations and processes. They work with stakeholders to identify problems, analyze data, and develop solutions. A strong foundation in programming is not always required for business analysts, but it can be helpful, especially for those who want to work in technical industries or who want to develop data-driven solutions. This course may be useful as a foundation for business analysis, as it introduces essential programming concepts and uses C++, a language used in many technical fields.

Reading list

We've selected 13 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Initiation à la programmation (en C++).
Ce livre adopte une approche unique pour enseigner la programmation en C++. Il se concentre sur le développement de la pensée algorithmique et des bonnes pratiques de programmation. C'est un excellent choix pour les débutants qui souhaitent apprendre à programmer efficacement.
Ce livre est un ouvrage de référence complet sur le langage C++. Il couvre tous les aspects du langage, des bases aux concepts avancés. C'est une ressource précieuse pour les programmeurs de tous niveaux.
Ce livre est un guide pratique pour écrire du code C++ efficace et maintenable. Il couvre des sujets tels que la gestion de la mémoire, le typage et les techniques de conception. C'est une lecture essentielle pour les programmeurs C++ expérimentés.
Ce livre explore les fonctionnalités avancées du système d'exceptions de C++. Il couvre des sujets tels que la gestion des exceptions, la hiérarchie des exceptions et les bonnes pratiques. C'est une excellente ressource pour les programmeurs C++ qui souhaitent écrire du code robuste et fiable.
Ce livre explore les fonctionnalités avancées du C++ moderne, telles que les modèles, les génériques et la programmation méta. C'est une excellente ressource pour les programmeurs qui souhaitent tirer le meilleur parti du langage C++.
Ce livre est un guide complet de la programmation de modèles en C++. Il couvre tous les aspects de la programmation de modèles, des bases aux concepts avancés. C'est une ressource essentielle pour les programmeurs qui souhaitent utiliser les modèles pour écrire du code C++ efficace et maintenable.
Ce livre couvre les modèles de conception et les meilleures pratiques de programmation en C++. Il fournit des conseils pratiques sur la façon d'écrire du code C++ efficace, maintenable et réutilisable.
Ce livre est un guide pratique pour écrire du code C++ concurrentiel. Il couvre des sujets tels que les threads, les mutex et les sémaphores. C'est une excellente ressource pour les programmeurs qui souhaitent écrire du code C++ capable de tirer parti des processeurs multicœurs.
Ce livre est une introduction rapide à la programmation en C++. Il couvre les bases du langage et fournit des exemples pratiques pour aider les lecteurs à apprendre rapidement.
Ce livre est une introduction idéale à la programmation en C++ pour les débutants. Il couvre les bases du langage et fournit des exemples pratiques pour aider les lecteurs à apprendre.
Ce livre est un guide complet de la programmation en C++. Il couvre tous les aspects du langage, des bases aux concepts avancés. C'est une excellente ressource pour les débutants qui souhaitent apprendre le C++ rapidement et facilement.
Ce livre est un guide accéléré de la programmation en C++. Il couvre les bases du langage et fournit des exemples pratiques pour aider les lecteurs à apprendre rapidement.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Initiation à la programmation (en C++).
Introduction à la programmation orientée objet (en C++)
Most relevant
Initiation à la programmation (en Java)
Most relevant
Introduction à la programmation orientée objet (en Java)
Most relevant
Projet de programmation (en Java)
Most relevant
Développeur Python | Formation Complète 2024
Most relevant
Introduction à l'éthique de l’IA
Most relevant
Automatiser les tâches de cybersécurité avec Python
Most relevant
Programmation et Politiques Financières, Première Partie:...
Most relevant
Orthography & Pronunciation - French - Advanced
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser