Information, Computation, Communication
Résumé
L'objectif de ce cours est d'introduire les étudiants à la pensée algorithmique, de les familiariser avec les fondamentaux de l'Informatique et de développer une première compétence en programmation (langage C++).
Contenu
La partie théorique est organisée en trois modules : calcul (algorithmes, récursion, complexité, représentation des nombres), information (échantillonnage, reconstruction, th. de Nyquist-Shannon, compression, 1er th. de Shannon), systèmes et sécurité (ordinateur de von Neumann, hiérarchies de mémoire, réseaux, menaces et défenses, cryptographie à clé secrète, RSA).
La partie pratique (initiation à la programmation en langage C++) aborde les notions suivantes : variables, expressions, structures de contrôle, fonctions, entrées-sorties, ...
Les concepts théoriques introduits lors des cours magistraux seront mis en pratique dans le cadre d'exercices de programmation sur machines.
Mots-clés
Informatique, Ordinateurs, Algorithmes, Communications, Programmation, C++
Acquis de formation
A la fin de ce cours l'étudiant doit être capable de:
- Concevoir et Exprimer un algorithme
- Calculer la complexité d'un algorithme simple
- Expliquer comment représenter des nombres et des symboles dans un ordinateur
- Exposer comment mesurer la quantité d'information présente dans des données
- Exposer comment capter la réalité physique avec des nombres
- Exposer comment reconstruire les grandeurs physiques à partir de suites de nombres les représentant
- Expliquer comment stocker des données en utilisant le moins d'espace possible
- Expliquer quel problème peut être résolu avec un algorithme
- Analyser un problème complexe pour le décomposer en sous-problèmes
- Modéliser en langage C++ une situation simple du monde réel décrite en français
- Transcrire un algorithme en son programme équivalent en C++
- Réaliser de façon autonome une application de petite taille au moyen du langage C++
- Analyser du code C++ simple pour en décrire le résultat ou le corriger s'il est erroné
- Tester l'adéquation du résultat d'un programme simple par rapport à la tâche demandée
Compétences transversales
- Utiliser les outils informatiques courants ainsi que ceux spécifiques à leur discipline.
- Accéder aux sources d'informations appropriées et les évaluer.
Méthode d'enseignement
Partie théorique : Ex cathedra avec exercices
Partie pratique (programmation) : séances ex cathedra complétant un cours en ligne (MOOC), travaux pratiques sur ordinateur.
Travail attendu
Participation au cours (en salle et en ligne), résolutions d'exercices, travail personnel « à la maison ».
Méthode d'évaluation
Contrôle continu sous forme de 3 examens pendant le semestre.
Encadrement
Office hours | Non |
Assistants | Oui |
Forum électronique | Oui |
Ressources
Service de cours virtuels (VDI)
Oui
Ressources en bibliothèque
Sites web
Liens Moodle
Vidéos
In the programs
- Semester: Fall
- Exam form: During the semester (winter session)
- Subject examined: Information, Computation, Communication
- Lecture: 3 Hour(s) per week x 14 weeks
- Exercises: 3 Hour(s) per week x 14 weeks
- Type: mandatory