Programmation en langage C/C++

Code UE : NFA037

  • Cours + travaux pratiques
  • 6 crédits
  • Volume horaire de référence
    (+ ou - 10%) : 50 heures

Responsable(s)

Gerard CANESI

Public, conditions d’accès et prérequis

Publics visés
  • Personnes souhaitant apprendre à bien programmer,
  • Personnes souhaitant approfondir leur niveau de programmation avec les langages C et C++,
  • Personnes souhaitant comprendre la programmation orientée objet avec C++,
  • Personnes souhaitant intégrer des écoles d'informatique, de programmation type école 42,
  • Développeurs, scientifiques, chefs de projet, enseignants, informaticiens, électroniciens, mathématiciens, ingénieurs, analystes financiers, comptables...
  • Etudiants, apprentis, élèves ingénieurs, élèves d'écoles de commerce,
  • Enseignants de la spécialité NSI,
  • Candidats au CAPES d'informatique.
Prérequis
Il est conseillé d'avoir quelques rudiments de programmation car le rythme est soutenu.
Posséder des bases de programmation, quel que soit le langage (variables, affectations, tests conditionnels, boucles, tableaux, fonctions) est un atout sans être obligatoire.
Néanmoins, si vous travaillez régulièrement et respectez bien les conseils donnés vous pourrez suivre et valider cette UE.
Si vous voulez vraiment progresser : prévoir un minimum de 2 x 2 heures de programmation par semaine.
Avoir le niveau d'UE comme : NFE006 Macros/VBA ou NFA031 (JAVA) est un atout mais n'est pas obligatoire.
 
Après cette UE...
Cette UE peut-être suivie d'unités d'enseignement en programmation du département d'informatique ou d'analyse numérique mathématique (CS001 et CSC002).
Vous pourrez accéder à des UE du département informatique sur la recherche opérationnelle, l'intelligence artificielle, la programmation embarquée...

L'avis des auditeurs

Les dernières réponses à l'enquête d'appréciation pour cet enseignement :

Objectifs pédagogiques

Objectifs
  • Apprendre à bien programmer,
  • En validant cette UE on obtient un très bon niveau d'autonomie de programmation en langage C et C++, langages les plus utilisés dans le monde avec Java et Python,
  • Perfectionner son niveau de programmation en C et C++,
  • Comprendre et maîtriser les principes de la programmation orientée objet avec le langage C++.
Organisation de l'enseignement
Cet enseignement se veut concret, pragmatique avec une progression pédagogique étudiée et graduée ;  un seul objectif : savoir programmer pleinement et en autonomie en C et C++.
Si l'UE est ouverte en Présentiel : Une séance sur machine de 3,5 heures, chaque semaine pendant 13 semaines (Cours/ED/TP).
Si l'UE est ouverte en Formation Ouverte à Distance (FOAD)  : Documents pédagogiques, cours, exercices, corrigés et vidéos éventuelles sont mis en ligne semaine après semaine permettant de travailler de chez soi, à son propre rythme ; des séances en visio permettent de faire le point avec l'enseignant, en direct ; un forum permet des échanges concrets et réguliers de questions et réponses...
Si l'UE est ouverte en "Hybride"  : Très nombreux documents pédagogiques, cours, exercices, corrigés et vidéos mis en ligne chaque semaine + au moins 2 séances de regroupements sur place ou en visio pour faire le point, reprendre des éléments de cours, corriger des exercices, répondre aux questions, etc.
A Paris
Ouverture de l'UE uniquement au SEMESTRE 2 en "FOAD" avec de très nombreux documents pédagogiques, cours, exercices, corrigés, programmes sources implémentés, nombreuses vidéos pédagogiques faites maison, conseils, recommandations, sont mis en ligne semaine après semaine sur la plateforme Moodle du Cnam. Une fois par mois, un point est réalisé en direct et en visio avec l'enseignant, qui revient sur des points clés du cours et des exercices et répond aux questions. Cet enseignement a été totalement adapté pour celles et ceux qui ne peuvent pas venir régulièrement à des cours en présentiel et souhaitent travailler avec efficacité de chez eux.
Inscriptions : Début septembre 2022 ou janvier 2023     https://www.cnam-paris.fr/m-inscrire/
Début des enseignements : Début Février 2023.
Inscription obligatoire (paiement compris) pour accéder aux documents de cours mis en ligne sur la plateforme Moodle
Coût approximatif de l'UE à 6 crédits : 180 euros, financements possibles.
Pour tout problème d'inscription, de coût, de financement ou de paiement merci de contacter exclusivement la scolarité : https://www.cnam-paris.fr/m-inscrire/
 
En région
Cette UE est également ouverte dans certains centres Cnam en région.
Le programme de l'UE est identique en région et correspond à celui défini sur cette fiche mais chaque centre régional adapte son enseignement selon les besoins.
Consulter donc directement votre centre régional qui vous donnera tous les renseignements utiles ou allez sur le site Web de votre centre régional (inscription, frais, ouverture de l'UE, ouverture en présentiel ou à distance, modalités d'évaluation...)
https://www.cnam-paris.fr/reseau-des-centres/
Document non contractuel.

Compétences visées

Ecrire des programmes informatiques, des algorithmes.
Savoir analyser un problème ; le décomposer en éléments.
Traduire un énoncé textuel en programme informatique, modéliser une situation.
Etre tenace, rigoureux et persévérant afin de corriger les erreurs d'un programme informatique.

Contenu

Programme détaillé de l'UE
  • Présentation, reprise des bases du langage C (variables, typage, entrées/sorties, tests conditionnels, opérateurs de pré et post incrémentation...),
  • Rappels sur les boucles for et while, imbrications de boucles,
  • Les tableaux, tableaux 2D, dynamiques, algorithmes,
  • Les fonctions, passage de paramètres par valeur, valeurs de retour,prototypes...
  • La récursivité, fonctions récursives,
  • Les pointeurs, adresses, gestion de la mémoire, passage de paramètres par adresse, accès direct en mémoire
  • Les types énumérés et complexes, créer son propre type de données,
  • Gestion des chaînes de caractères, fonctions utiles sur les chaînes de caractères, algorithmes,
  • Lecture et écriture dans des fichiers textes et binaires,
  • Les listes chaînées, piles, files : ajout/suppression de maillons, parcours de listes, algorithmes avec des listes...
  • De C à C++ : Écriture de programmes en C++,
  • Implémentations en C++ d'arbres simples, parcours simples d'arbres, algorithmes récursifs,
  • Introduction à la programmation orientée objet, notions de classes, méthodes, attributs,
  • Les constructeurs, l'encapsulation de données, la surcharge d'opérateurs et de méthodes, destructeurs
  • Setters, getters, méthodes statiques, dynamiques,
  • L'héritage, le polymorphisme,
  • L'héritage multiple, polymorphisme, masquage de fonction
  • Généricité, templates, classes et méthodes virtuelles
  • Gestion des exceptions
  • Headers, programmation modulaire,
  • Écriture et codage d'algorithmes, tris, tris récursifs...
  • Comparaison de programmes C/C++ et Python
Plus de 300 programmes concrets seront à écrire, programmer et compiler dans le cadre de cet enseignement.

Modalité d'évaluation

Projet individuel (code source C/C++) à rendre avec soutenance obligatoire et/ou examen individuel (code source C/C++ à écrire) dans le cadre du contrôle continu (pas de QCM).

Bibliographie

  • xx : Documents de cours
  • xx : Exercices et corrigés d'exercices
  • xx : Vidéos pédagogiques
  • xx : Programmes sources implémentés

Cette UE apparaît dans les diplômes et certificats suivants

Chargement du résultat...
Patientez

Contact

Equipe pédagogique ISI
2D4P10, 33-1-13B, 2 rue Conté
75003 Paris
Tel :01 58 80 84 71
Alexandre LESCAUT

Voir le calendrier, le tarif, les conditions d'accessibilité et les modalités d'inscription dans le(s) centre(s) d'enseignement qui propose(nt) cette formation.

UE

    • Paris
      • Centre Cnam Paris
        • 2022-2023 2nd semestre : FOAD 100%
        Comment est organisée cette formation ?

        Organisation de la modalité FOAD 100%

        Planning

        2ème semestre

        • Date de démarrage : 06/02/2023
        • Date limite d'inscription : 20/03/2023
        • Date de 1ère session d'examen : 12/06/2023
        • Date de 2ème session d'examen : 04/09/2023

        Précision sur la modalité pédagogique

        • Regroupements physiques facultatifs : Aucun

        Organisation du déploiement de l'unité

        • Nombre d'élèves maximum à distance par classe : 50
        • Nombre d'heures d'enseignement par élève : 50
        • Délai maximum de réponse à une solicitation : sous 96 heures (Jours ouvrés)

        Modes d'animation de la formation

        • Forum
        • Messagerie intégrée à la plateforme
        • Visioconférence
        • Outils numériques de travail collaboratif
        • Organisation d'une séance de démarrage
        • Evaluation de la satisfaction
        • Hot line technique
        • Regroupement en visio live une fois par mois

        Ressources mises à disposition sur l'Espace Numérique de Formation

        • Documents de cours
        • Enregistrement de cours
        • Documents d'exercices, études de cas ou autres activités pédagogiques
        • Outils spécifiques (exerciseur, simulateurs, etc)
        • Bibliographie et Webographie
        • Vidéos pédagogiques et Corrigés d'exercices

        Activités "jalons" de progression pédagogique prévues sans notation obligatoire à rendre ou en auto-évaluation

        • 200 exercices
        • 1 étude de cas, projet individuel
        • Conseils pédagogiques et recommandations chaque semaine

        Modalité de contrôle de l'acquisition des compétences et des connaissances (validation de l'UE)

        • Projet(s) individuel(s)
        • Contrôle continu (travaux à rendre)
        :
    • Bretagne
      • Saint-Brieuc
        Comment est organisée cette formation ?

        Organisation de la modalité FOAD 100%

        Planning

        1er semestre

        • Date de démarrage : 17/10/2022
        • Date limite d'inscription : 12/11/2022
        • Date de 1ère session d'examen : 21/01/2023
        • Date de 2ème session d'examen : 25/03/2023

        Précision sur la modalité pédagogique

        • Regroupements physiques facultatifs : Aucun

        Organisation du déploiement de l'unité

        • Nombre d'élèves maximum à distance par classe : 100
        • Délai maximum de réponse à une solicitation : sous 96 heures (Jours ouvrés)

        Modes d'animation de la formation

        • Forum
        • Messagerie intégrée à la plateforme
        • Visioconférence
        • Organisation d'une séance de démarrage
        • Evaluation de la satisfaction
        • Hot line technique

        Ressources mises à disposition sur l'Espace Numérique de Formation

        • Documents de cours
        • Enregistrement de cours
        • Documents d'exercices, études de cas ou autres activités pédagogiques
        • Bibliographie et Webographie

        Activités "jalons" de progression pédagogique prévues sans notation obligatoire à rendre ou en auto-évaluation

        • voir le scénario pédagogique

        Modalité de contrôle de l'acquisition des compétences et des connaissances (validation de l'UE)

        • Examens présentiels dans un centre habilité
        :
    • Grand Est
      • Grand Est
        Comment est organisée cette formation ?

        Organisation de la modalité FOAD 100%

        Planning

        2ème semestre

        • Date de démarrage : 27/02/2023
        • Date limite d'inscription : 15/08/2023
        • Date de 1ère session d'examen : 19/06/2023
        • Date de 2ème session d'examen : 28/08/2023

        Précision sur la modalité pédagogique

        • Regroupements physiques facultatifs : Aucun

        Organisation du déploiement de l'unité

        • Nombre d'élèves maximum à distance par classe : 35
        • Nombre d'heures d'enseignement par élève : 21
        • Délai maximum de réponse à une solicitation : sous 96 heures (Jours ouvrés)

        Modes d'animation de la formation

        • Forum
        • Messagerie intégrée à la plateforme
        • Visioconférence
        • Organisation d'une séance de démarrage
        • Evaluation de la satisfaction
        • Hot line technique

        Ressources mises à disposition sur l'Espace Numérique de Formation

        • Documents de cours
        • Enregistrement de cours
        • Documents d'exercices, études de cas ou autres activités pédagogiques
        • Bibliographie et Webographie

        Modalité de contrôle de l'acquisition des compétences et des connaissances (validation de l'UE)

        • Examens présentiels dans un centre habilité
        :