Information, calcul, communication
Section outline
-
Fiche de cours
Programmation
- Cours : les lundis de 15h15 à 16h00, en salle CM 2
(Streaming non interactif : l’enregistrement sera disponible au plus tard le lendemain) - Exercices : les lundis de 16h15 à 18h00, en salles CO 020, CO 021 et CO 023
- Assistant doctorant responsable de la partie programmation :
Palak (palak.palak@epfl.ch)
Théorie
- Cours : les vendredis de 14h15 à 16h00, en salle CE 12
-
Changement de salle exceptionnel le 13 mars 2026 - SALLE ELA 1
- Changement de salle exceptionnel le 1 mai 2026 - SALLE ELA 1
-
- Exercices : les vendredis de 16h15 à 17h00, en salle INF 1 et INF 119
- Assistant doctorant responsable de la partie théorie :
Abdellah El Mrini (abdellah.elmrini@epfl.ch)
Enseignant :
Rafael Pires (rafael.pires@epfl.ch)Assistant·e·s étudiant·e·s :
- Malak Boulahfa (malak.boulahfa@epfl.ch)
- Majd El Blidi (majd.elblidi@epfl.ch)
- Andrew Hajj Assaf (andrew.hajjassaf@epfl.ch)
- Hedi Kharouf (hedi.kharouf@epfl.ch)
- Luc-Faustin Munongo Kazembe (luc-faustin.munongokazembe@epfl.ch)
- Corentin Sébastien Rouault (corentin.rouault@epfl.ch)
- Lina Sadgal (lina.sadgal@epfl.ch)
- Omar Zakariya (omar.zakariya@epfl.ch)
Évaluation :
CALENDRIER DES SÉANCES - CS-119(k) - SPRING 25-26
Lundi: Programmation (Cours 15-16h, Exercices 16-18h) | Vendredi: Théorie (Cours 14-16h, Exercices 16-17h)
Sem. Date Cours Lundi Exercices Lundi Date Cours Vendredi Exercices Vendredi 1 16 fév Variables, types, arithmétique, print() Exercices intro 20 fév Introduction; Algorithmes: bases Lire/écrire algorithmes 2 23 fév Fonctions, slicing, conditions, boucles, range() Exercices boucles 27 fév Complexité temporelle; Grand Theta Complexité; Algorithmes 3 2 mars Boucles (suite); Fonctions simples Exercices fonctions 6 mars Récursivité Algorithmes récursifs 4 9 mars Listes Exercices listes 13 mars Algo glouton; Prog. dynamique; Calculabilité
CHANGEMENT DE SALLE ELA 1Exercices récursivité 5 16 mars Objets mutables/immuables; Modules; Sets Exercices sets 20 mars P/NP; Sac à dos; Voyageur de commerce Identifier P/NP 6 23 mars Dictionnaires; Dataclasses Exercices dict 27 mars Représentation binaire (entiers/réels) Exercices binaire 7 30 mars Fichiers texte; Chaînes de caractères Exercices fichiers 3 avril Vendredi saint - Férié 6 avril VACANCES DE PÂQUES 8 13 avril MIDTERM 15:15-17:15 dans les salles CE 13 et CE 14 17 avril Portes logiques; Transistors; RAM Exercices portes logiques 9 20 avril Manipulation d'images; Intro miniprojet Miniprojet 24 avril Signaux; Filtrage; Echantillonnage Bande passante; Filtres 10 27 avril Images; Mini-projet Miniprojet 1 mai Théorème échantillonnage; Sous-échantillonnage
CHANGEMENT DE SALLE ELA 1Interpolation; Battement 11 4 mai List comprehensions; Lambdas Exercices lambdas 8 mai Entropie; Shannon-Fano; Huffman Compression 12 11 mai Threads; Locks; Données partagées Exercices threads 15 mai Cryptographie (clé secrète/publique) Diffie-Hellman; Nombres premiers 13 18 mai Révisions Anciens examens 22 mai Réseaux: TCP (AIMD); IP (routage) AIMD; Exercices routage 14 25 mai Pentecôte - Férié 29 mai Révisions Anciens examens - Cours : les lundis de 15h15 à 16h00, en salle CM 2
-
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h
- Généralités
- Déclaration de variables; types de données
- Arithmétique de base et conversions entre types
- Appel de fonctions/méthodes prédéfinies et de print()
Cours:
-
Introduction et logistique
- Algorithmes: ingrédients de base
Exercices:
- Lire et écrire des algorithmes
-
Utilisez la machine IC-CO-IN-SC-INJ-2026-Spring (le VM IC-CO-IN-SC-MA-2026-Spring est identique et devraient fonctionner aussi, mais pas les autres).
-
Si vous travaillez sur une machine virtuelle de l'EPFL
-
Si vous travaillez sur votre propre machine
-
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h
- Syntaxe: fonctions, méthodes, slicing
- Conditions
- Boucles
- La fonction range()
Cours:
- Algorithmes: complexité temporelle
- Notation "Grand Theta"
Exercices:
- Complexité temporelle
- Ecriture d'algorithmes
-
Désolé, mais Zoom a enregistré comme ça. Je rajoute l’enregistrement de l’année passée si jamais.
- Syntaxe: fonctions, méthodes, slicing
-
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h
- Boucles, suite
- Déclaration et appel de fonctions simples
Cours:
- Récursivité
Exercices:
- Lire et écrire des algorithmes récursifs
- Boucles, suite
-
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h
Attention : Changement de salle exceptionnel ELA 1
- Listes
Cours:
- Rendu de pièces de monnaie: algorithme
glouton et programmation dynamique - Introduction à la théorie de la calculabilité
Exercices:
- Divers exercices sur la récursivité
-
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h
- Objets immuables, objets modifiables et références
- Imports, modules
- Sets
Cours:
- Classes de complexité des problèmes
- Le problème du sac à dos
- Le problème du voyageur de commerce
Exercices:
- Identifier quels problèmes font partie de P/NP
- Objets immuables, objets modifiables et références
-
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h
- Révisions: Listes, sets
- Dictionnaires
- Classes simples (dataclasses)
Cours:
- Représentation binaire des nombres entiers
- Représentation binaire des nombres réels
Exercices:
- Nombres de bits nécessaires
- Utilisation de la représentation binaire
- Révisions: Listes, sets
-
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
03.04.2026 Congé (Vendredi saint)
- Lecture et écriture de fichiers texte
- Opération sur des chaînes de caractères
-
Monday: Programming in Python
06.04.2026 Congé (Lundi de Pâques) 10.04.2026 Congé
Fin avril 2025: Publication de l'horaire des examens -
-
Première vidéo (en anglais) de Ben Eater sur le fonctionnement d'une diode, le plus simple des semi-conducteurs
-
Deuxième vidéo (toujours en anglais) de Ben Eater sur le fonctionnement d'un transistor
-
Monday: Programming in Python
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h
- Manipulation d’images
- Introduction au miniprojet
Cours:
- Signaux: fréquences et bande passante
- Filtrage de signaux
- Echantillonnage de signaux
- Effet stroboscopique
Exercices:
- Bande passante
- Signaux périodiques et apériodiques
- Filtre à moyenne mobile
-
Group registration (on Moodle):
– Registration deadline: before Monday, April 27, 2026, 11:59 pm
– The mini-project is to be done in groups of two or individually.
– Even students working alone must be in a group
– Submission deadline: May 22, 2026 at 11:59 PM
– Submit early — you can make as many submissions as you like!
– Two files to submit (on Moodle): miniproject_a.py and miniproject_b.py
– Only one person per group needs to submit the project
Important:
– Do not modify the signatures of the functions you are required to implement!
– If your code depends on functions you have added or modified, these functions must be
present in miniproject_a.py or miniproject_b.py.
• Grading: only your functions to complete are evaluated, not the main.
-
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h
- Manipulation d’images
- Mini-projet
Cours:
- Reconstruction de signaux
- Théorème d'échantillonnage
- Sous-échantillonnage
Exercices:
- Filtrer avant d'échantillonner
- Formule d'interpolation
-
Lundi: Programmation
Cours: 15-16h, Exercices: 16-18h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h
- MP2 partie 2
- Compréhensions de liste
- Fonctions d’ordre supérieur
- Lambdas
Cours:
- Entropie
- Algorithmes de Shannon-Fano et Huffman
- Théorème de Shannon
- Compression avec pertes
Exercices:
- Calcus d'entropie
- Comparaison d'entropies
- Algorithmes de compression


