Initiation à la programmation (en C++)


About this course: 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.

Who is this class for: Ce cours s'adresse à toute personne désireuse d'apprendre les concepts de base de la programmation. Aucun prérequis n'est nécessaire, mais la formulation des exercices présuppose une « culture » niveau lycée (sans que ce soit rédhibitoire non plus).

Created by:   École Polytechnique Fédérale de Lausanne
  • Jean-Cédric Chappelier
    Taught by:    Jean-Cédric Chappelier, Dr.
    School of Computer and Communication Sciences
  • Jamila Sam
    Taught by:    Jamila Sam, Dr
    School of Computer and Communication Sciences
LevelBeginner
Commitment8 semaines de cours, 4-6 heures/semaine
Language
FrenchSubtitles: English
How To PassPass all graded assignments to complete the course.
User Ratings
Average User Rating 4.7See what learners said
Syllabus
WEEK 1
Initiation à la programmation
Cette semaine vous accueille dans le cours et vous présente les premiers concepts de base de la programmation. 

9 videos9 readings
  1. Video: Bienvenue
  2. Reading: Déroulement du cours
  3. Reading: Contributeurs
  4. Reading: Installation d'un environnement de développement C++11 sous Linux
  5. Video: Installation sous Linux (Ubuntu)
  6. Reading: Installation d'un environnement de développement C++11 sous Mac OS X
  7. Video: Installation sous MacOS 10.9 et sup.
  8. Video: Installation sous MacOS 10.7 et 10.8
  9. Reading: Installation d'un environnement de développement C++11 sous Window
  10. Video: Installation sous Windows
  11. Reading: [optionnel] Debugging sous Geany
  12. Video: Introduction
  13. Video: Variables
  14. Video: Variables : lecture/écriture
  15. Video: Expressions
  16. Reading: Notes de cours
  17. Reading: Exercices
  18. Reading: Compléments de cours (variables et expressions)
  19. Ungraded Programming: (non noté) Premiers programmes
Graded: Variables et expressions
WEEK 2
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.

3 videos3 readings
  1. Video: Branchements conditionnels
  2. Video: Conditions
  3. Video: Erreurs de débutant le type bool
  4. Reading: Notes de cours
  5. Reading: Exercices
  6. Reading: Compléments de cours (branchements conditionnels)
Graded: Branchements conditionnels et booléens
Graded: Branchements conditionnels
WEEK 3
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. 

5 videos2 readings
  1. Video: Itérations : introduction
  2. Video: Itérations : approfondissement et exemples
  3. Video: Itérations : quiz
  4. Video: Boucles conditionnelles
  5. Video: Blocs d'instructions
  6. Reading: Notes de cours
  7. Reading: Exercices
Graded: Boucles et itérations
Graded: Boucles et itérations
WEEK 4
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. 

7 videos2 readings
  1. Video: Fonctions : introduction
  2. Video: Fonctions : appels
  3. Video: Fonctions : passage des arguments
  4. Video: Fonctions : prototypes
  5. Video: Fonctions : définitions
  6. Video: Fonctions : méthodologie
  7. Video: Fonctions : arguments par défaut et surcharge
  8. Reading: Notes de cours
  9. Reading: Exercices
Graded: Fonctions
Graded: Fonctions
WEEK 5
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.

7 videos4 readings
  1. Reading: Errata
  2. Video: Tableaux : introduction
  3. Video: Tableaux : déclaration et initialisation des vector
  4. Video: Tableaux : utilisation des vector
  5. Video: Tableaux : exemples simples (vector)
  6. Video: Tableaux : fonctions spécifiques vector
  7. Video: Tableaux : tableaux dynamiques multidimensionnels
  8. Video: Tableaux : array
  9. Reading: Notes de cours
  10. Reading: Exercices
  11. Reading: Complément de cours : les tableaux « à la C »
Graded: Tableaux
WEEK 6
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. 

4 videos2 readings
  1. Video: string : introduction
  2. Video: string : traitements
  3. Video: Typedef : alias de types
  4. Video: Structures
  5. Reading: Notes de cours
  6. Reading: Exercices
Graded: Chaînes de caractères et structures
Graded: Tableaux, chaînes et structures
WEEK 7
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. 

6 videos2 readings
  1. Video: Pointeurs et références : introduction
  2. Video: Références
  3. Video: Pointeurs : concept et analogie
  4. Video: Pointeurs : déclaration et opérateurs de base
  5. Video: Pointeurs : allocation dynamique
  6. Video: Pointeurs « intelligents »
  7. Reading: Notes de cours
  8. Reading: Exercices
Graded: Pointeurs et références
WEEK 8
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é ». 

7 videos3 readings
  1. Video: Puissance 4 : introduction
  2. Video: Puissance 4 : premières fonctions
  3. Video: Puissance 4 : fonction joue 1ère version
  4. Video: Puissance 4 : fonction joue variantes et révision
  5. Video: Puissance 4 : moteur de jeu
  6. Video: Puissance 4 : fonctions est_ce_gagne et compte
  7. Video: Puissance 4 : finalisation
  8. Reading: Code source de l'étude de cas
  9. Reading: Notes de cours
  10. Reading: Exercices
Graded: Types énumérés
How It Works
Coursework
Coursework
Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.
Help from Your Peers
Help from Your Peers
Connect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.
Certificates
Certificates
Earn official recognition for your work, and share your success with friends, colleagues, and employers.
Creators
École Polytechnique Fédérale de Lausanne

No comments:

Post a Comment