Information, calcul, communication
Weekly outline
-
- Théorie
- Cours: les vendredis de 14h15 à 16h00, en salles SG 1 et par Zoom
- Exercices: les vendredis de 16h15 à 17h15+, en salles DIA 004, DIA 005, INF 1, INF 119 et INJ 218
- Assistant principal: Pierre Quinton (pierre.quinton@epfl.ch)
- Cours: les vendredis de 14h15 à 16h00, en salles SG 1 et par Zoom
- Programmation
- Cours: les mardis de 14h15 à 15h00, en salle SG 1 / les cours enregistrés
- Exercices: les mardis de 15h15 à 17h00, en salles BC 07-08, CO 020, CO 021, CO 023, INF 3
Examen final: Lundi 24 juin, 15h15-18h15, en salles CE 1, CE 1105, CE 1515, CE 3, CE 4, CE 6, PO 01.-
You will need to choose one of the machines IC-CO-IN-SC-(INJ/MA)
- Théorie
-
Mardi: Programmation
Cours: 14h-15h, Exercices: 15h-17h
Vendredi: Théorie
Cours: 14-16h , Exercices: 16-17h+
Cours (rediffusion):
- Introduction
- Constantes, variables, fonctions
- Sortie standard
Cours:
-
Introduction et logistique
- Algorithmes: ingrédients de base
Exercices:
- Préparer l'environment (Unix + VS Code)
- Premiers programmes en C
Exercices:
- Lire et écrire des algorithmes
-
Mardi: Programmation
Cours: 14-15h, Exercices: 15-17h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours (rediffusion):
- Rappels
- Lecture depuis stdin
- Expressions et opérateurs
Cours:
- Algorithmes: complexité temporelle
- Notation "Grand Theta"
Exercices:
- Affichage, opérations, expressions
Exercices:
- Complexité temporelle
- Ecriture d'algorithmes
-
Mardi: Programmation
Cours: 14-15h, Exercices: 15-17h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours (rediffusion):
- Expressions, instructions conditionnelles
Cours:
- Récursivité
Exercices:
- Expressions, instructions conditionnelles
Exercices:
- Lire et écrire des algorithmes récursifs
-
Mardi: Programmation
Cours: 14-15h, Exercices: 15-17h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours (rediffusion):
- Instructions itératives (boucles)
Cours:
- Rendu de pièces de monnaie: algorithme
glouton et programmation dynamique - Introduction à la théorie de la calculabilité
Exercices:
- Boucles
Exercices:
- Divers exercices sur la récursivité
-
Une version précédente de la série contenait un exercice de plus, mais il a été déplacé à la série suivante.
-
Mardi: Programmation
Cours: 14-15h, Exercices: 15-17h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours (rediffusion):
- Fonctions
Cours:
- Classes de complexité des problèmes
- Le problème du sac à dos
- Le problème du voyageur de commerce
Exercices
- Fonctions, boucles
Exercices:
- Identifier quels problèmes font partie de P/NP
-
Il y avait une coquille dans le 2ème exercice, dans l'exemple la somme des 9 éléments choisis de la matrice vaut 100, pas 90.
-
Mardi: Programmation
Cours: 14-15h, Exercices: 15-17h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours (rediffusion):
- Pointeurs
Pas de cours (vendredi saint)Exercices:
- Boucles, Pointeurs, Fonctions
-
Mardi: Programmation
Cours: 14-15h, Exercices: 15-17h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours:
- TBD
Cours:- Représentation binaire des nombres entiers
- Représentation binaire des nombres réels
Exercices:
- TBD
Exercices:
- Nombres de bits nécessaires
- Utilisation de la représentation binaire
-
Mardi: Programmation
Cours: 10-11h, Exercices: 8-10h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours:
- TBD
Cours:- Portes logiques et opérations élémentaires
- Transistors et mémoire vive
- Circuits quantiques
Exercices:
- TBD
Exercices:
- Exercices sur les portes logiques et transistors
-
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
-
Mardi: Programmation
Cours: 14h, Exercices: 15-17h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours:
- TBD
Cours:
- Signaux: fréquences et bande passante
- Filtrage de signaux
- Echantillonnage de signaux
- Effet stroboscopique
Exercices:
- TBD
Exercices:- Bande passante
- Signaux périodiques et apériodiques
- Filtre à moyenne mobile
-
Mardi: Programmation
Cours: 10-11h, Exercices: 8-10h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours:
- TBD
Cours:
- Reconstruction de signaux
- Théorème d'échantillonnage
- Sous-échantillonnage
Exercices: - TBD
Exercices:
- Filtrer avant d'échantillonner
- Phénomène de battement
- Formule d'interpolation
-
Dans le présent dossier, vous trouvez les fichiers avec le morceau de Jazz (‘’Our love is here to stay’’, de Georges Gerschwin, joué par Roland Kirk) dans ses différentes versions, ainsi que leur analyse spectrale.
-
Mardi: Programmation
Cours: 10-11h, Exercices: 8-10h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours :
- Examples of short exam questions on pointers, arrays, structures
Cours:
- Introduction à la compression de données
- Entropie
Exercices:
- Graded project
Exercices:
- Calculs d'entropie
- Comparaison d'entropies
-
Mardi: Programmation
Cours: 10-11h, Exercices: 8-10h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Cours:
This week we will learn how to use functions from string library to analyze text. Additionally, we will discover that the function main, like any other function, can receive arguments. The latter is very useful, as it permits to pass values to our programs already while calling the program from the command line.
- Strings:
Cours:
- Algorithmes de Shannon-Fano et Huffman
- Théorème de Shannon
- Compression avec pertes
Exercices:
- Moving average (former exam question)
- Chairs game (former exam question)
Exercices:
- Algorithmes de compression
- A la recherche d'un trésor
- Codage par plages (RLE)
-
ICC-C-Solution-MovingAvg File
-
ICC-C-Solution-ChairsGame File
- Strings:
-
Mardi: Programmation
Cours: 10-11h, Exercices: 8-10h
Vendredi: Théorie
Cours: 14-16h, Exercises: 16-17h+
Cours:
- Examples of short exam questions on pointers, strings, and arrays of strings
- [optional, for those interested] Watch the video on working with text files (reading, writing)
Cours:
- Correction d'erreurs: introduction
- Codes de Reed-Solomon
- Reseaux: Protocole TCP (algorithme AIMD)
- Réseaux: protocole IP (algorithme BFS et routage)
Exercices:
- Conversion binary <--> string
- Signal sampling and reconstruction
Exercices:
- Distance minimale
- Codage de Hamming
- Code-barres
- Algorithme AIMD et variantes
- Exercices de routage
-
ICC-C-Lecture10-CodeExamples (Answers) File
-
ICC-C-Exercise-Binary2Int File
-
ICC-C-Solution-Binary2Int File
-
ICC-C-Solution-Binary2Int (recursive) File
-
ICC-C-Exercise-SamplingAndReconstruction File
-
ICC-C-Solution-SamplingAndReconstruction File
-
Mardi: Programmation
Cours: 10-11h, Exercices: 8-10h
Vendredi: Théorie
Cours: 14-16h, Exercices: 16-17h+
Lecture:
- Q&A, open discussion, no particular topic planned
Cours:
- Cryptographie à clé secrète
- Cryptographie à clé publique
Exercises:
- Entropy
Exercices:
- Protocoles de Diffie-Hellman et El-Gamal
- Recherche de grands nombres premiers
-
For the ICC-C part of the final exam, all topics (in lectures, exercises, project) will be considered, except the following:
- Ubuntu intro
- Environment setup
- Lecture10-Files
The format of ICC-C questions on the final exam will be the same as on the ICC-C midterm exam.
- Ubuntu intro
-
ICC-C-Exercise-Entropy File
-
examples.txt File
-
entropy.c File
-
ICC-C-Solution-Entropy File