CS-119(h) / coefficient 6

Teacher(s): Lévêque Olivier, Stojilovic Mirjana

Language: French


Résumé

L'objectif de ce cours est d'initier les étudiants à la pensée algorithmique, de les familiariser avec les fondamentaux de l'informatique et des communications et de développer une première compétence en programmation avec le langage Python.

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 propose une introduction à la programmation impérative et à ses concepts fondamentaux, en Python. Elle aborde les notions suivantes : variables, expressions, structures de contrôle (conditions, boucles), fonctions (déclaration, appel, arguments), entrées-sorties, structures de données (listes, ensembles, tuples, dictionnaires), ainsi que l'utilisation de bibliothèques telles que numpy et Matplotlib.

Remarquez que la liste des sujets abordés est indicative et que des variations d'un an à l'autre sont possibles. La participation en classe est, quoi qu'il en soit, fortement recommandée !

Mots-clés

Informatique, Ordinateurs, Algorithmes, Communication, Programmation

Acquis de formation

A la fin de ce cours l'étudiant.e doit être capable de:

  • Analyser un problème complexe pour le décomposer en sous-problèmes
  • Concevoir et exprimer un algorithme
  • Modéliser en langage Python une situation simple du monde réel décrite en français
  • Transcrire un algorithme en son programme équivalent en Python
  • 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
  • Réaliser de façon autonome une application de petite taille au moyen du langage Python
  • Analyser du code Python 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
  • Exposer comment capter la réalité physique avec des (suites de) nombres
  • Exposer comment reconstruire les grandeurs physiques à partir de suites de nombres les représentant
  • Exposer quel problème peut être résolu avec un algorithme
  • Utiliser la ligne de commande Linux pour exécuter un programme
  • Structurer un programme
  • Comparer plusieurs approches (bouts de code)
  • Modéliser en langage Python une situation simple du monde réel décrite en français

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: séances ex cathedra avec exercices

Partie pratique (programmation) : séances ex cathedra et travaux pratiques sur ordinateur. L'enseignement de Python se fait en anglais, afin de favoriser la maîtrise du vocabulaire technique et l'accès à une large documentation.

Travail attendu

Participation au cours (en salle), résolution d'exercices, travail personnel à la maison

Méthode d'évaluation

Contrôle continu: deux examens intermédiaires pendant le semestre, un projet de programmation et un quiz sur la sécurité informatique

Encadrement

Office hours Non
Assistant.e.s Oui
Forum électronique Oui

Ressources

Service de cours virtuels (VDI)

Oui

Bibliographie

Ressources en bibliothèque

Liens Moodle

Vidéos

In the programs

  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Information, Computation, Communication
  • Courses: 3 Hour(s) per week x 14 weeks
  • Exercises: 3 Hour(s) per week x 14 weeks
  • Type: mandatory
  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Information, Computation, Communication
  • Courses: 3 Hour(s) per week x 14 weeks
  • Exercises: 3 Hour(s) per week x 14 weeks
  • Type: mandatory
  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Information, Computation, Communication
  • Courses: 3 Hour(s) per week x 14 weeks
  • Exercises: 3 Hour(s) per week x 14 weeks
  • Type: mandatory

Reference week

Friday, 9h - 10h: Lecture CE1106
CE12

Friday, 10h - 12h: Exercise, TP INF2
CM1103
CM1110
CM1112
BC07-08

Friday, 13h - 15h: Lecture CO1

Friday, 15h - 16h: Exercise, TP AAC132
CO017
CO015
CO016
AAC137

Related courses

Results from graphsearch.epfl.ch.