Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Dimension: px
Commencer à balayer dès la page:

Download "Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte"

Transcription

1 Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes différents de compression/décompression. Dans cet énoncé, nous commencerons par rappeler quelques généralités sur la compression de texte, puis nous présenterons les deux algorithmes à réaliser et enfin nous donnerons quelques informations sur l organisation du projet et relatives au rendu et à l évaluation du projet. 1 Généralités sur la compression/décompression de texte La compression d un fichier informatique permet de réduire sa taille, permettant ainsi de gagner de la place sur le disque dur, de transmettre plus rapidement ce fichier par le réseau, etc.... Bien sur, lorsqu un fichier est compressé, on doit être capable de le décompresser. On distingue en général deux types de compression pour les fichiers informatiques : la compression avec pertes ou sans pertes d informations. La compression avec pertes d informations est particulièrement adaptée aux fichiers contenants des données physiques tel que du son, de la vidéo ou une image. On ne s y intéressera pas dans ce projet. Dans le cas de la compression d un texte, on ne veut perdre aucune informations. Il ne s agit pas que, pour un fichier compressé puis décompressé, un caractère a du fichier d origine devienne un caractère b. On utilise alors des algorithmes de compression dit sans pertes de données. Dans ce projet, il vous est demandé de coder deux de ces algorithmes, l algorithme rle (pour Run Length Encoding) et un algorithme se basant sur les codes de Huffman. 2 L algorithme RLE. L algorithme rle est un algorithme compressant des fichiers contenant des caractères se répétant plusieurs fois à la suite. L idée consiste simplement à remplacer une suite du même caractère par ce caractère suivie d un chiffre indiquant son nombre de répétitions. Ainsi, la chaîne "aaaa" sera encodée par la chaîne "a3" indiquant que l on a le caractère a suivie de 3 répétitions du même caractère. Cette méthode présente toutefois un problème. Autant "aaaa" sera compressé, autant "bc" sera encodé par "b0c0", augmentant ainsi les données au lieu de les compresser. On propose de modifier légèrement cet algorithme et d attendre de lire 2 fois de suite le même caractère pour ensuite indiquer le nombre de répétitions qui suivent. Ainsi, "aaaa" sera encodé par "aa2" et, par exemple, "aaaabcbb" sera encodé par "aa2bcbb0". Cette algorithme ne fonctionne bien sûr que si le texte initial contient en moyenne beaucoup de répétitions successives des caractères. La décompression est alors relativement simple. On lit les caractères un par un. Tant que l on ne lit pas deux fois le même caractère, on se contente d écrire le caractère lu dans le fichier résultat. Lorsqu on lit deux fois de suite le même caractère, on sait que suit un chiffre indiquant le nombre de répétitions restantes pour ce caractère. Il suffit alors d écrire autant de fois que nécessaire le caractère en question dans le fichier résultat. 3 L algorithme de Huffman. 3.1 Principe de l algorithme Dans un fichier texte, chaque caractère du texte occupe le même espace physique, soit 8 bits (voir aussi 3. pour plus de détails là-dessus). L idée est de changer cela, en donnant aux caractères les plus fréquents dans le texte un codage plus court, quitte à donner à certains autres caractère peu fréquent un codage de plus de 8 bits. 1

2 Pour cela, on va d abord calculer les probabilités d apparence de chaque caractère dans le texte à compresser. Par exemple, supposons que l on veuille compresser le texte "badbbacddcab", les probabilités 1 de chaque caractère sont : caractère probabilité a 3 b 4 c 2 d 3 L idée est alors d associer aux caractères un code (binaire) d autant moins long que le caractère est fréquent. On pourrait, pour les probabilités ci-dessus, être tenté de prendre pour b le code 0, pour a le code 1, pour d le code 10 et pour c le code 11. Ceci serait optimal en terme de longueur des codes mais malheureusement le décodage du texte (la décompression) serait alors impossible. En effet, avec de tels codes, 101 pourrait être décodé en "aba" mais aussi en "da". On doit donc trouver des codes, certes moins optimal, mais tel que le décodage puisse s effectuer sans ambiguïté. C est ce que Mr. Huffman (David A. Huffman, ) nous propose en utilisant, dans notre exemple, les codes suivants : caractère code a 01 b 00 c 11 d 10 Avec ces codes, par exemple, ne peut être décodé que par "bdc". Et puisque sur un ordinateur, un caractère est normalement encodé sur 8 bits, "bdc" occupe 3 8 = 24 bits, à comparer avec les 6 bits de son code de Huffman. On a bien compressé le texte. 3.2 Calcul des codes à l aide d arbres de Huffman Pour calculer ces codes, on va devoir construire un arbre de Huffman. L arbre de Huffman pour notre exemple est : Dans cet arbre, les feuilles sont les caractères (avec leurs probabilités entre parenthèse) alors que les noeuds représentent des caractères fictifs dont la probabilité est la somme des probabilités de leurs fils. Une fois cet arbre construit, le code d un caractère est facilement trouvé en suivant le chemin dans l arbre depuis la racine jusqu au caractère et en prenant 0 lorsque l on va à gauche et 1 lorsque l on va à droite. Comment créer l arbre de Huffman? Pour cela, on utilise un tas dont les éléments sont eux-même des arbres de Huffman. Dans la suite, on appellera probabilité de l arbre la probabilité du noeud racine d un arbre donné. On commence en remplissant le tas avec une feuille pour chaque caractère, et de façon à ce que le tas soit trié par probabilité croissante. Autrement dit, initialement, l arbre au sommet du tas contiendra le caractère avec la plus petite probabilité (dans notre exemple, le caractère c). Ensuite, et tant que le tas contient plus d un élément, on récupère les deux derniers éléments du tas (qui sont donc les arbres de plus petites probabilités), on créer un nouveau noeud fictif ayant pour fils les deux arbres récupérés et comme probabilité la somme des probabilités de ces deux fils. Enfin, on insère l arbre ainsi créé dans le tas de façon à ce que ce dernier reste trié 1 Ce qu on appelle probabilité ici n est que le nombre d occurrences de chaque caractère. Pour avoir une probabilité d apparence il faudrait diviser ces chiffres par le nombre total de caractère du texte, mais cela ne changerait rien a notre algorithme. 2

3 par probabilité croissante, et on continue. Lorsqu il n y a plus qu un seul élément sur le tas, celui-ci est l arbre de Huffman. Sur notre exemple précédent, la construction de l arbre de Huffman suit les étapes suivantes : On commence avec le tas contenant une feuille par caractère. Le tas est trié en fonction des probabilités : On récupère les deux éléments au sommet du tas, qu on joint par un noeud fictif de probabilité la somme des probabilités de ces deux éléments : Puis on insère l arbre nouvellement créé à sa place dans le tas. On recommence avec les deux nouveaux éléments au sommet. Et on insère l arbre nouvellement créé au tas. Le tas contient plus d un élément donc on continue. 12 Enfin, lorsqu il ne reste qu un seul élément, on a construit notre arbre de Huffman Compression L algorithme de compression lit en entrée un fichier quelconque et écrit un fichier résultat contenant un entête suivit de la suite de code de Huffman correspondant au fichier d entrée. L algorithme peut se résumer ainsi : On compte, dans le fichier d entrée, quels caractères apparaissent et combien de fois chacun ; 3

4 A partir de ces informations, on construit l arbre de Huffman ; On utilise l arbre de Huffman pour calculer le code de Huffman de chacun des caractères. On écrit l entête du fichier résultat (voir ci-dessous) ; On relit le fichier d entrée caractère par caractère en écrivant à chaque fois dans le fichier résultat le code de Huffman correspondant au caractère lue. Lors de la décompression, on utilisera également l arbre de Huffman. Mais celui-ci n est évidemment pas reconstructible à partir du fichier compressé. Il faut donc sauver cet arbre au début du fichier compressé. Il est toutefois plus simple de simplement sauver la liste des couples caractère et nombre d occurrences du caractère du fichier d entrée. En effet, une fois récupéré, il suffira d utiliser la même fonction de construction de l arbre de Huffman que pour la compression pour ré-obtenir le même arbre. Il faut donc écrire cette liste au début du fichier résultat. C est ce qu on appelle l entête du fichier. Une bonne idée consiste à également conserver le nombre de caractère de la liste, mais aussi le nombre de caractère total du fichier d entrée (qui sera donc le nombre total de caractère à décoder à la décompression). 3.4 Décompression L algorithme de décompression lit en entrée un fichier compressé avec l algorithme ci-dessus, et donc comprenant un entête suivie d une suite de code de Huffman, et écrit un fichier correspondant à la décompression du fichier d entrée. L algorithme peut se résumer ainsi : On lit l entête du fichier compressé, récupérant ainsi la liste des caractères avec leurs occurrences, et le nombre de caractères à décoder ; On reconstruit l arbre de Huffman à partir de la liste lue ; On lit alors bit par bit le reste des données du fichier compressé. On va alors se déplacer dans l arbre de Huffman. Lorsqu on lit un 0 on se déplace à gauche, lorsqu on lit un 1 on se déplace à droite. Et lorsqu on arrive à une feuille de l arbre, on a décodé un caractère : celui de la feuille en question. On écrit alors ce caractère dans le fichier résultat et on continue avec le bit suivant en repartant du noeud racine de l arbre de Huffman ; Lorsque l on a lu le bon nombre de caractère, on a correctement décompressé notre fichier. 3. Lecture et écriture de bits dans un fichier Rappelons qu un fichier informatique n est ultimement qu une (longue) suite de 0 et de 1. Pour un fichier de texte (ceux auxquels on s intéresse dans ce projet), on associe à chaque bloc de 8 bits un caractère dit ASCII. Puisque avec 8 bits on code 26 valeurs, on a 26 caractères ASCII (avec par exemple le code 9 pour le caractère a ). Les fonctions de la librairie standard C putc et getc permettent d écrire et de lire de tels caractères dans un fichier. Il n est en revanche pas possible de lire ou d écrire un seul bit dans un fichier. En particulier, tout fichier contient un nombre de bit multiple de 8. D ailleurs, la taille des fichiers informatiques s exprime toujours en octet (1 octet = 8 bits). Ainsi un fichier peut toujours être vu comme une suite de caractères. Toutefois, pour la compression (resp. la décompression) avec l algorithme de Huffman, on aimerait pouvoir écrire (resp. lire) dans un fichier bit par bit. Il va donc falloir émuler cela en utilisant un buffer accumulant les bits à écrire et, lorsque l on a accumulé 8 bits, on les écrits (avec putc). De même, pour la lecture, on lira 8 bits d un coup (avec getc) et on récupéra ensuite les bits un par un. Et lorsque les 8 bits auront été récupérés, on relira 8 nouveaux bits du fichier d entrée. Pour cela on aura besoin en particulier des opérations de décalage de bit >> et << ainsi que des opérations bit à bit &,, etc... Il faudra faire attention au fait que la compression avec l algorithme n engendre pas nécessairement un nombre de bits totales multiple de 8. 4 Réalisation du projet Le but du projet est d écrire un programme C effectuant la compression et la décompression d un fichier avec l algorithme rle et l algorithme basé sur les codes de Huffman. Pour cela, le projet comporte 2 parties. La première partie consiste à coder l algorithme rle et fait office d échauffement. La seconde partie concerne Huffman. 4

5 4.1 1ère partie : RLE. Vous coderez la compression et la décompression avec l algorithme rle. Vous devrez donc coder 2 fonctions, une de compression et une de décompression, mais également une fonction main résultant, une fois compilée, en un programme permettant la compression ou la décompression (une option sur la ligne de commande devra permettre ce choix) d un fichier nde partie : Huffman. Pour cet algorithme, on a besoin de manipuler des structure de données, les arbres de Huffman et les tas d arbres de Huffman. On doit aussi être capable de lire et d écrire des bits. On va donc procéder dans l ordre suivant : 1. Vous coderez une petite librairie sur les arbres de Huffman. Le type des arbres de Huffman sera : typedef struct hnode { int fictive; /* Vaudra 0 si le noeud n est pas fictif, 1 sinon. */ int character; /* Le caractère si le noeud n est pas fictif. */ int proba; /* La probabilité du noeud. */ /* Ici vous pourrez rajouter tous les champs qui vous semblent utiles. */ struct hnode *left; struct hnode *right; } hnode_t; typedef hnode_t *htree; Vous devrez coder au moins les fonctions suivantes : des fonctions d accès et de modifications des différents éléments contenus dans l arbre ; une fonction de création d un arbre ne contenant qu une feuille ; une fonction qui joint deux arbres par un noeud fictif ayant comme probabilité la somme des probabilités des deux sous-arbres. 2. Vous coderez une petite librairie sur les tas d arbres de Huffman. Le type des tas sera : typedef struct helt { htree elt; struct helt *next; } helt_t; typedef helt_t *hheap Vous coderez au moins les fonctions suivantes : une fonction de création d un tas vide ; des fonctions pour pousser/retirer l élément au sommet du tas ; un fonction d insertion d un arbre dans un tas respectant l ordre en probabilité croissante du tas ; une fonction qui teste si un tas ne contient plus qu un seul élément. 3. Vous coderez ensuite une petite librairie pour la lecture et l écriture de bits. Vous devrez au moins coder les fonctions suivantes : une fonction de lecture d un bit depuis un descripteur de fichier (type FILE*) ; une fonction d écriture d un bit dans un descripteur de fichier ; une fonction terminant l écriture de bits (en effet, on écrira réellement le fichier seulement lorsque l on aura collecté 8 bits. Il est toutefois possible qu à la fin, on ait moins de 8 bits à écrire. Cette fonction permettra alors d écrire quand même les derniers bits.). Lorsque vous aurez codé ces 3 librairies, vous coderez des fonctions de compression et de décompression d un fichier avec l algorithme de Huffman. Pour finir, vous intégrerez la compression/décompression avec Huffman au programme que vous aviez écrit dans la première partie.

6 Organisation du projet Le projet doit être réalisé en monôme. Un soin tout particulier devra être apporté à l indentation et le code devra être commenté correctement. On évitera également de coder l intégralité du projet dans un seul fichier. La date limite de rendu du projet est fixée au Vendredi 1 Février, 23h9. Des soutenances seront organisées la semaine du 18 Février. Le rendu s effectuera par mail à l adresse Ce mail devra contenir : Tous les fichiers source (.c et.h) de votre projet. Chaque fichier source devra commencer par votre nom et prénom en commentaire ; Un fichier Makefile permettant la compilation de votre projet, et ce simplement à l aide de la commande make ; Un simple fichier texte expliquant en quelques lignes comment utiliser le (les) binaire(s) créé(s) lors de la compilation ; Un document de quelques pages expliquant les difficultés que vous avez rencontrées et les solutions que vous y avez apportées. 6

Langage C/C++ TD 3-4 : Création dynamique d objets. Hubert Godfroy. 27 novembre 2014

Langage C/C++ TD 3-4 : Création dynamique d objets. Hubert Godfroy. 27 novembre 2014 Langage C/C++ TD 3-4 : Création dynamique d objets Hubert Godfroy 7 novembre 014 1 Tableaux Question 1 : Écrire une fonction prenant un paramètre n et créant un tableau de taille n (contenant des entiers).

Plus en détail

COMPRESSION/DECOMPRESSION D UNE IMAGE BINAIRE

COMPRESSION/DECOMPRESSION D UNE IMAGE BINAIRE Le 29 novembre 2013, Rapport projet TS114 COMPRESSION/DECOMPRESSION D UNE IMAGE BINAIRE Par Marc BELLINGER et Antoine BINON. 2eme année Télécommunications. 1 Introduction : Le but de ce projet est d implémenter

Plus en détail

Compression méthode de Huffman

Compression méthode de Huffman Compression méthode de Huffman Thierry Lecroq Université de Rouen FRANCE La méthode de Huffman consiste à remplacer les caractères les plus fréquents par des codes courts et les caractères les moins fréquents

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

Plus en détail

Arbres binaires et codage de Huffman

Arbres binaires et codage de Huffman MP Option Informatique Premier TP Caml Jeudi 8 octobre 2009 Arbres baires et codage de Huffman 1 Arbres baires Soit E un ensemble non vide. On défit la notion d arbre baire étiqueté (aux feuilles) par

Plus en détail

C12. Les structures arborescentes. Août 2006

C12. Les structures arborescentes. Août 2006 Les structures arborescentes Août 2006 Objectifs du C12 Connaître le principe de la structure d arbre binaire Connaître les détails d implémentation de la structure d arbre binaire de recherche Les structures

Plus en détail

TS214 - Compression/Décompression d une image binaire

TS214 - Compression/Décompression d une image binaire Filière Télécommunications, 2 ème année TS214 - Compression/Décompression d une image binaire De nombreux télécopieurs utilisent la recommandation T.4 Groupe 3 de l International Telecommunications Union

Plus en détail

Exercice 1 : Questions diverses (5 points)

Exercice 1 : Questions diverses (5 points) Université Claude Bernard Lyon 1 Licence Sciences, Technologies, Santé L2 Année 2010-2011, 2ème semestre LIF5 Algorithmique & Programmation procédurale Contrôle final du 20 juin 2011 Durée : 1h30 Note

Plus en détail

UV Théorie de l Information. Codes à longueur variable

UV Théorie de l Information. Codes à longueur variable Cours n 5 : UV Théorie de l Information Compression de l information : Codage de source sans distorsion Ex 1 : Code de Shannon Fano Ex 2 : Code de Huffman Ex 3 : Codage par plage Ex 4 : Codage de Lempel

Plus en détail

Série d exercices N 9 Arbres

Série d exercices N 9 Arbres Série d exercices N 9 Arbres Exercice 1 a) Ecrire une fonction ARBIN creerarbreentiers() qui permet de créer et de renvoyer l arbre d entiers suivant : b) Ecrire une fonction int feuilles(arbin a) qui

Plus en détail

Compression de Données - Algorithme de Huffman Document de Conception

Compression de Données - Algorithme de Huffman Document de Conception ROLLET Samuel SALLE Jennifer Compression de Données - Algorithme de Huffman Document de Conception Projet d'algorithmique et Structure des Données 1 SOMMAIRE 1. Domaine d application....4 1.1 Objectifs

Plus en détail

Les arbres binaires de recherche

Les arbres binaires de recherche Institut Galilée Année 2010-2011 Algorithmique et arbres L2 TD 6 Les arbres binaires de recherche Type en C des arbres binaires (également utilisé pour les ABR) : typedef struct noeud_s { struct noeud_s

Plus en détail

Les structures de données. Rajae El Ouazzani

Les structures de données. Rajae El Ouazzani Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l

Plus en détail

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3 I Arbres binaires 2014-2015 Table des matières 1 Rappels 2 1.1 Définition................................................ 2 1.2 Dénombrements............................................ 2 1.3 Parcours.................................................

Plus en détail

Temps de transmission du document compressé

Temps de transmission du document compressé École de technologie supérieure INF-145 Travail pratique #3 Frédérick Henri Travail en équipe de 2 L algorithme de compression de LZW 1 Objectifs Retour sur les notions de pointeur, d enregistrement et

Plus en détail

3ETI, Examen [CSC2] Developpement Logiciel en C CPE Lyon

3ETI, Examen [CSC2] Developpement Logiciel en C CPE Lyon 3ETI, Examen [CSC2] Developpement Logiciel en C CPE Lyon 2012-2013 (2eme session) durée 2h Tous documents et calculatrices autorisés. Le sujet comporte 6 pages Le temps approximatif ainsi que le barème

Plus en détail

RÈGLES POUR L'ÉCRITURE DES PSEUDO-CODES (Programmation par objets)

RÈGLES POUR L'ÉCRITURE DES PSEUDO-CODES (Programmation par objets) RÈGLES POUR L'ÉCRITURE DES PSEUDO-CODES (Programmation par objets) Consignes générales : 1) Chaque algorithme est bien identifié. 2) Les mots clés doivent être utilisés selon la même syntaxe que ci-dessous.

Plus en détail

TP N o 5 - Shell scripts, Codage, compression, archivage

TP N o 5 - Shell scripts, Codage, compression, archivage IUT de Villetaneuse E. Viennet GTR 2ème année Introduction au Système UNIX 8/10/01 TP N o 5 - Shell scripts, Codage, compression, archivage EXERCICE 1 - On reprend les deux dernières questions du TP précédent,

Plus en détail

TD : Codage des images

TD : Codage des images TD : Codage des images Les navigateurs Web (Netscape, IE, Mozilla ) prennent en charge les contenus textuels (au format HTML) ainsi que les images fixes (GIF, JPG, PNG) ou animée (GIF animée). Comment

Plus en détail

Mini-Projet : Tournoi de Dames

Mini-Projet : Tournoi de Dames Mini-Projet : Tournoi de Dames L objectif du projet est de programmer un jeu de dames de façon à ce que votre programme puisse jouer une partie de dames avec les programmes des autres étudiants. 1 Organisation

Plus en détail

COMPRESSION BINAIRE. Compression et décompression d une image binaire suivant la recommandation T.4 de l ITU-T

COMPRESSION BINAIRE. Compression et décompression d une image binaire suivant la recommandation T.4 de l ITU-T COMPRESSION BINAIRE Compression et décompression d une image binaire suivant la recommandation T.4 de l ITU-T Auteurs: KASTTET Ahmed, SALIM Eliass ENSEIRB. T2. 2007/2008 SOMMAIRE I.Introduction... 3 II.Codage...

Plus en détail

Transmission d informations sur le réseau électrique

Transmission d informations sur le réseau électrique Transmission d informations sur le réseau électrique Introduction Remarques Toutes les questions en italique devront être préparées par écrit avant la séance du TP. Les préparations seront ramassées en

Plus en détail

Algorithmique P2. HeapSort et files de priorité Ulg, 2009-2010 Renaud Dumont

Algorithmique P2. HeapSort et files de priorité Ulg, 2009-2010 Renaud Dumont Algorithmique P2 HeapSort et files de priorité Ulg, 2009-2010 Renaud Dumont Structure de tas - arbre Un tas est une structure de données qui Permet un nouveau type de tri (Tri par tas) Permet l'implémentation

Plus en détail

L2 - Algorithmique et structures de données (Année 2010/2011) Examen (2 heures)

L2 - Algorithmique et structures de données (Année 2010/2011) Examen (2 heures) L2 - lgorithmique et structures de données (nnée 2010/2011) Delacourt, Phan Luong, Poupet xamen (2 heures) Les documents (cours, TD, TP) sont autorisés. Les quatre exercices sont indépendants. À la fin

Plus en détail

TP 8 : Arbres binaires de recherche

TP 8 : Arbres binaires de recherche TP 8 : Arbres binaires de recherche Semaine du 17 Mars 2008 Exercice 1 Dénir une structure struct noeud_s permettant de coder un n ud d'un arbre binaire contenant une valeur entière. Ajouter des typedef

Plus en détail

Arbres binaires de recherche

Arbres binaires de recherche Chapitre 1 Arbres binaires de recherche 1 Les arbre sont très utilisés en informatique, d une part parce que les informations sont souvent hiérarchisées, et peuvent être représentées naturellement sous

Plus en détail

CONCOURS 2015 ÉPREUVE D INFORMATIQUE. (Durée de l épreuve : 1h30 heures) L usage de l ordinateur ou de la calculatrice est interdit.

CONCOURS 2015 ÉPREUVE D INFORMATIQUE. (Durée de l épreuve : 1h30 heures) L usage de l ordinateur ou de la calculatrice est interdit. A 2015 INFO. ÉCOLE DES PONTS PARISTECH. SUPAERO (ISAE), ENSTA PARISTECH, TELECOM PARISTECH, MINES PARISTECH MINES DE SAINT-ÉTIENNE, MINES NANCY, TÉLÉCOM BRETAGNE, ENSAE PARISTECH (Filière MP). ÉCOLE POLYTECHNIQUE

Plus en détail

Projet Programmation 2012-2013

Projet Programmation 2012-2013 Projet Programmation 2012-2013 Cours d informatique de Deuxième Année Licence L1.2 Gestion du trafic aérien d un aéroport Le projet est à réaliser par binôme (2). Une soutenance aura lieu lors de la dernière

Plus en détail

TD 1 de Langage C module Outils pour l'informatique Industrielle - Corrigés des Tds : http://www-lagis.univ-lille1.fr/~macaire/td.

TD 1 de Langage C module Outils pour l'informatique Industrielle - Corrigés des Tds : http://www-lagis.univ-lille1.fr/~macaire/td. Exercice 1 TD 1 de Langage C module Outils pour l'informatique Industrielle - Corrigés des Tds : http://www-lagis.univ-lille1.fr/~macaire/td.htm Exercices de base de Programmation Arbre Programmatique

Plus en détail

Réseaux Multimédia 2002 Damien Magoni

Réseaux Multimédia 2002 Damien Magoni Réseaux Multimédia 2002 Damien Magoni Toutes les illustrations 2001 Pearson Education Limited Fred Halsall Contenu Représentation des informations multimédia Numérisation Structure d un encodeur Structure

Plus en détail

Structures de données non linéaires

Structures de données non linéaires Structures de données non linéaires I. Graphes Définition Un graphe (simple) orienté G est un couple (S, A), où : S est un ensemble dont les éléments sont appelés les sommets. A est un ensemble de couples

Plus en détail

Option Informatique Arbres binaires équilibrés

Option Informatique Arbres binaires équilibrés Option Informatique Arbres binaires équilibrés Sujet novembre 2 Partie II : Algorithmique et programmation en CaML Cette partie doit être traitée par les étudiants qui ont utilisé le langage CaML dans

Plus en détail

PROJET de DEVELOPPEMENT LOGICIEL en C. OBJECTIFS du PROJET :

PROJET de DEVELOPPEMENT LOGICIEL en C. OBJECTIFS du PROJET : PROJET de DEVELOPPEMENT LOGICIEL en C OBJECTIFS du PROJET : Développer un logiciel en équipe de plusieurs étudiants. Le projet : programme simulant une chaîne de transmission de données entre ordinateurs

Plus en détail

Séance de TD 05 TD05. 1 Exercice 1. 1.1 Question 1 : dessins des ABR avec hauteurs différentes AG51

Séance de TD 05 TD05. 1 Exercice 1. 1.1 Question 1 : dessins des ABR avec hauteurs différentes AG51 Séance de TD 05 1 Exercice 1 1. Dessinez les arbres binaires de recherche de hauteur 2,3,4,5 et 6 pour le même ensemble de clés S = 1,4,5,10,16,17,21. 2. Donnez l algorithme de l opération ArbreRechercher(x,k)

Plus en détail

Arbres ordonnés, binaires, tassés, FAP, tri par FAP, tas, tri par tas

Arbres ordonnés, binaires, tassés, FAP, tri par FAP, tas, tri par tas Arbres ordonnés, binaires, tassés, FAP, tri par FAP, tas, tri par tas 1. Arbres ordonnés 1.1. Arbres ordonnés (Arbres O) On considère des arbres dont les nœuds sont étiquetés sur un ensemble muni d'un

Plus en détail

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

Algorithmes de tris. Chapitre 4

Algorithmes de tris. Chapitre 4 Chapitre 4 Algorithmes de tris Trier un ensemble d objets consiste à ordonner ces objets en fonction de clés et d une relation d ordre définie sur cette clé. Par exemple, chaque étudiant inscrit à l université

Plus en détail

Compression de données. Vincent Vajnovszki

Compression de données. Vincent Vajnovszki ls tdnts ntllgnts cmprnnnt fclmnt c txt sns vlls Si, au lieu de dépenser 150 euros pour acheter un nouveau disque dur vous pouviez garder cette somme pour vos vacances? Le codage MP3 des données musicales

Plus en détail

Sommaire. Introduction au codage multimédia et la compression. Forme d un fichier. Introduction

Sommaire. Introduction au codage multimédia et la compression. Forme d un fichier. Introduction Sommaire au codage multimédia et la compression Sebastien.Kramm@univ-rouen.fr IUT SRC Rouen 2012-2013 Codage des images Format matriciel (bitmap) Codage du son Compression de données Compression avec pertes

Plus en détail

Concours 2015 Épreuve d Informatique Filière : MP Durée de l épreuve : 3 heures. L utilisation d une calculatrice est autorisée.

Concours 2015 Épreuve d Informatique Filière : MP Durée de l épreuve : 3 heures. L utilisation d une calculatrice est autorisée. A 2015 INFO. MP École des Ponts ParisTech, SUPAERO (ISAE), ENSTA ParisTech, Télécom ParisTech, Mines ParisTech, Mines de Saint-étienne, Mines Nancy, Télécom Bretagne, ENSAE ParisTech (filière MP), École

Plus en détail

Programmation avancée en C

Programmation avancée en C Département Informatique Nom : Prénom : Année scolaire : 2007 2008 Date : 23 juin 2008 Module INF446 Session de juin Programmation avancée en C Contrôle de connaissance 1 de 45 minutes ÅERCI de répondre

Plus en détail

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

Plus en détail

Objectifs du cours d aujourd hui. Informatique I : Cours d introduction à l informatique et à la programmation Structures de Données Abstraites & Tris

Objectifs du cours d aujourd hui. Informatique I : Cours d introduction à l informatique et à la programmation Structures de Données Abstraites & Tris Objectifs du cours d aujourd hui Informatique I : Cours d introduction à l informatique et à la programmation Structures de Données Abstraites & Tris Continuer l approfondissement de la programmation de

Plus en détail

ÉCOLE CENTRALE DE PÉKIN SCIENCES INDUSTRIELLES POUR L INGÉNIEUR

ÉCOLE CENTRALE DE PÉKIN SCIENCES INDUSTRIELLES POUR L INGÉNIEUR DM4 Page 北 航 中 法 工 程 师 学 院 ÉCOLE CENTRALE DE PÉKIN SCIENCES INDUSTRIELLES POUR L INGÉNIEUR Année académique 24-25 Devoir à la maison n 4 À rendre le vendredi 2 juin 25 Numéro d étudiant à 8 chiffres :

Plus en détail

THÉORIE DE L'INFORMATION : RAPPELS

THÉORIE DE L'INFORMATION : RAPPELS THÉORIE DE L'INFORMATION : RAPPELS 1920 : premières tentatives de définition de mesure de l'information à partir de 1948 : travaux de Shannon Théorie de l'information discipline fondamentale qui s'applique

Plus en détail

Cours 01 - Les structures de données

Cours 01 - Les structures de données Cours 01 - Les structures de données MPSI - Prytanée National Militaire Pascal Delahaye 1 er mars 2015 Les programmes informatiques, traitent des données, créent des données et renvoient des données. Pour

Plus en détail

Architecture des ordinateurs TP 3

Architecture des ordinateurs TP 3 Architecture des ordinateurs ESIPE - IR1 TP 3 Objectif de cette séance L objectif de cette séance est d apprendre à utiliser la pile et à écrire des fonctions en assembleur En particulier, nous verrons

Plus en détail

Les arbres Florent Hivert

Les arbres Florent Hivert 1 de 1 Algorithmique Les arbres Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 1 Algorithmes et structures de données La plupart des bons algorithmes fonctionnent

Plus en détail

Travaux dirigés n o 6

Travaux dirigés n o 6 Travaux dirigés n o 6 Lycée Kléber MPSI, Option Info 2014/2015 Exercice 1 (Indexation d un arbre binaire) Ecrire une fonction Caml indexation : ( f, n) arbre_binaire -> (string,string) arbre_binaire qui

Plus en détail

EPREUVE OPTIONNELLE d INFORMATIQUE

EPREUVE OPTIONNELLE d INFORMATIQUE EPREUVE OPTIONNELLE d INFORMATIQUE A) QCM Les réponses au QCM doivent être portées directement sur la feuille de sujet de QCM. Ne pas omettre de faire figurer votre numéro de candidat sur cette feuille

Plus en détail

gcc -Wall ansi o tp fichiers -lfl

gcc -Wall ansi o tp fichiers -lfl FLEX et BISON tp.l tp_l.c : - abréviations - expressions régulières et actions associées. tp.h : - définition de types - définition d étiquettes tp_y.h : codes symboliques pour les tokens FLEX Générateur

Plus en détail

Algorithmique et Analyse d Algorithmes

Algorithmique et Analyse d Algorithmes Algorithmique et Analyse d Algorithmes L3 Info Cours 11 : Arbre couvrant Prétraitement Benjamin Wack 2015-2016 1 / 32 La dernière fois Rappels sur les graphes Problèmes classiques Algorithmes d optimisation

Plus en détail

Université Paris Diderot Paris 7. TD n 2. Arbres Binaire de Recherche

Université Paris Diderot Paris 7. TD n 2. Arbres Binaire de Recherche Université Paris Diderot Paris L Informatique Algorithmique Année 00-0, er semestre TD n Arbres Binaire de Recherche Le type de donné arbre" sera utilisé pour indiquer l ensemble de toutes les Arbres Binaires

Plus en détail

alg - Arbres binaires de recherche [br] Algorithmique

alg - Arbres binaires de recherche [br] Algorithmique alg - Arbres binaires de recherche [br] Algorithmique Karine Zampieri, Stéphane Rivière, Béatrice Amerein-Soltner Unisciel algoprog Version 25 avril 2015 Table des matières 1 Définition, Parcours, Représentation

Plus en détail

IV- Comment fonctionne un ordinateur?

IV- Comment fonctionne un ordinateur? 1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions

Plus en détail

Programmation avancée

Programmation avancée Programmation avancée Chapitre 1 : Complexité et les ABR (arbres binaires de recherche) 1 1 IFSIC Université de Rennes-1 M2Crypto, octobre 2011 Plan du cours 1 2 3 4 5 6 7 8 9 10 Algorithmes Définition

Plus en détail

Conventions d écriture et outils de mise au point

Conventions d écriture et outils de mise au point Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette

Plus en détail

Arbres binaires de recherche

Arbres binaires de recherche Chapitre 6 Arbres binaires de recherche 6.1 Introduction On a étudié le problème de la recherche dans une collection d éléments ordonnés entre eux : on a montré que Pour une liste contiguë, la recherche

Plus en détail

Formats d images. 1 Introduction

Formats d images. 1 Introduction Formats d images 1 Introduction Lorsque nous utilisons un ordinateur ou un smartphone l écran constitue un élément principal de l interaction avec la machine. Les images sont donc au cœur de l utilisation

Plus en détail

Chaîne d additions ATTENTION!

Chaîne d additions ATTENTION! Chaîne d additions Épreuve pratique d algorithmique et de programmation Concours commun des écoles normales supérieures Durée de l épreuve: 3 heures 30 minutes Juin 2012 ATTENTION! N oubliez en aucun cas

Plus en détail

Partie I : Automates et langages

Partie I : Automates et langages 2 Les calculatrices sont interdites. N.B. : Le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la rédaction. Si un candidat est amené à repérer ce qui peut

Plus en détail

Systèmes de Fichiers

Systèmes de Fichiers Systèmes de Fichiers Hachage et Arbres B Serge Abiteboul INRIA February 28, 2008 Serge Abiteboul (INRIA) Systèmes de Fichiers February 28, 2008 1 / 26 Systèmes de fichiers et SGBD Introduction Hiérarchie

Plus en détail

INF-130 Travail Pratique #2

INF-130 Travail Pratique #2 École de technologie supérieure INF-30 Travail Pratique #2 Travail individuel Tracé d un métro Francis Bourdeau, Frédérick Henri et Patrick Salois Remise à la 0 e semaine. Objectifs - Amener l étudiant

Plus en détail

Mathématiques pour l Informatique I (Notes de cours) L1 UMLV. C. Nicaud

Mathématiques pour l Informatique I (Notes de cours) L1 UMLV. C. Nicaud Mathématiques pour l Informatique I (Notes de cours) L1 UMLV C. Nicaud February 10, 2014 2 Contents 1 Rappels 5 1.1 Fonctions et applications.............................. 5 1.2 Dénombrements élémentaires...........................

Plus en détail

Algorithmique IN102 TD 3

Algorithmique IN102 TD 3 Algorithmique IN10 TD 16 décembre 005 Exercice 1 Clairement, il existe des arbres de hauteur h à h + 1 éléments : il sut pour cela que leurs n uds internes aient au plus un ls non vide. On a alors un arbre

Plus en détail

Norme de programmation pour le cours et les travaux pratiques

Norme de programmation pour le cours et les travaux pratiques Université du Québec École de technologie supérieure Service des enseignements généraux www.seg.etsmtl.ca INF130 Ordinateurs et programmation Norme de programmation pour le cours et les travaux pratiques

Plus en détail

Question 1 : Sur votre compte-rendu, indiquer les réponses pour les positions a et b des interrupteurs.

Question 1 : Sur votre compte-rendu, indiquer les réponses pour les positions a et b des interrupteurs. 2 nde MPI Le Binaire 1 / 8 I) Le codage 1) Présentation du L informatique utilise des courants électriques, des aimantations, des rayons lumineux... Chacun de ces phénomènes met en jeu deux états possibles

Plus en détail

# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list =

# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun> 94 Programmation en OCaml 5.4.8. Concaténation de deux listes Définissons maintenant la fonction concat qui met bout à bout deux listes. Ainsi, si l1 et l2 sont deux listes quelconques, concat l1 l2 constitue

Plus en détail

LES IMAGES NUMERIQUES

LES IMAGES NUMERIQUES LES IMAGES NUMERIQUES Baccalauréat S -Spécialité Informatique et Sciences du Numérique 4.1 : Représentation de l'information : Images numériques Objectifs L'apprenant doit être capable de o numériser une

Plus en détail

ALGORITHMIQUE II. Récurrence et Récursivité. SMI AlgoII

ALGORITHMIQUE II. Récurrence et Récursivité. SMI AlgoII ALGORITHMIQUE II Récurrence et Récursivité Récurrence Suite récurrente: la déition d une suite est la donnée d un terme général déi en fonction du (ou des) terme(s) précédant(s) D un terme initial qui

Plus en détail

Introduction à l Informatique

Introduction à l Informatique Introduction à l Informatique. Généralités : Etymologiquement, le mot informatique veut dire «traitement d information». Ceci signifie que l ordinateur n est capable de fonctionner que s il y a apport

Plus en détail

Partie 3. Gilles Lebrun (gilles.lebrun@unicaen.fr)

Partie 3. Gilles Lebrun (gilles.lebrun@unicaen.fr) Partie 3 Gilles Lebrun (gilles.lebrun@unicaen.fr) Les arbres binaires Définition : C est une structure arborescente ou hiérarchique ou récursive Chaque élément (nœud) constituant la structure de l arbre

Plus en détail

1. Lecture / Ecriture

1. Lecture / Ecriture IUT Arles Info 1 ère année - Module AP (Algorithmique) TD 2 Algo 1. Lecture / Ecriture Exercice I : Quels résultats produira ce programme : Variables val, double : numériques Val 231 Double val * 2 Ecrire

Plus en détail

3ETI, Examen [CSC2] Developpement Logiciel en C CPE Lyon

3ETI, Examen [CSC2] Developpement Logiciel en C CPE Lyon 3ETI, Examen [CSC2] Developpement Logiciel en C CPE Lyon 2014-2015 (1ere session) durée 3h Tous documents et calculatrices autorisés. Répondez aux questions sur une copie séparée Le sujet comporte 8 pages

Plus en détail

EXAMEN FINAL. 2 Février 2006-2 heures Aucun document autorisé

EXAMEN FINAL. 2 Février 2006-2 heures Aucun document autorisé MIE - E ANNÉE ALGORITHMIQUE GÉNÉRALE Vincent Mousseau EXAMEN FINAL Février 006 - heures Aucun document autorisé Exercice : On s intéresse à la gestion informatique des réservations sur l année d une salle

Plus en détail

pedigree d'un cheval Zoe ; son père est Tonnerre et sa mère Belle ; mère de Belle est Rose et père de Belle est Eclair jean jean marc paul luc

pedigree d'un cheval Zoe ; son père est Tonnerre et sa mère Belle ; mère de Belle est Rose et père de Belle est Eclair jean jean marc paul luc Chap. 3 Les arbres binaires Un arbre est un ensemble de nœuds, organisés de façon hiérarchique, à partir d'un nœud distingué, appelé racine. La structure d'arbre est l'une des plus importantes et des plus

Plus en détail

Cours numéro 9 : arbres binaires et de recherche

Cours numéro 9 : arbres binaires et de recherche Cours numéro 9 : arbres binaires et de recherche LI213 Types et Structures de données Licence d Informatique Université Paris 6 Arbre Arbre Un arbre est un ensemble fini A d éléments, liés entre eux par

Plus en détail

Chapitre 3 Structures de données linéaires : listes, piles et files

Chapitre 3 Structures de données linéaires : listes, piles et files Chapitre 3 Structures de données linéaires : listes, piles et files 1. Introduction Le but de ce chapitre est de décrire des représentations des structures de données de base telles les listes en général

Plus en détail

Exemple. Il ne faudra pas confondre (101) 2 et (101) 10 Si a 0,a 1, a 2,, a n sont n+1 chiffres de 0 à 1, le

Exemple. Il ne faudra pas confondre (101) 2 et (101) 10 Si a 0,a 1, a 2,, a n sont n+1 chiffres de 0 à 1, le Chapitre I - arithmé La base décimale Quand on représente un nombre entier, positif, on utilise généralement la base 10. Cela signifie que, de la droite vers la gauche, chaque nombre indiqué compte 10

Plus en détail

1 Introduction au codage

1 Introduction au codage CélestineOscarDésiréAnatoleGastonEugène 1 Introduction au codage 1.1 Les ensembles L ensemble de tout les ensembles est Dieu lui-même. Kantor Ensemble des parties d un ensemble désigne l ensemble des sous-ensembles

Plus en détail

Sujet à finir pour le jeudi 8 janvier 2015 23h59 À rendre par mail à aurelie.lagoutte@ens-lyon.fr

Sujet à finir pour le jeudi 8 janvier 2015 23h59 À rendre par mail à aurelie.lagoutte@ens-lyon.fr ENS Lyon L3 Info PROJ1 2014 2015 Projet Caml : Jeux de cartes 1 Consignes Sujet à finir pour le jeudi 8 janvier 2015 23h59 À rendre par mail à aurelie.lagoutte@ens-lyon.fr Forme Vous devez rendre le fichier.ml

Plus en détail

DEUG MIAS2 - MODULE INFORMATIQUE (MIA10B) EXAMEN (SEPTEMBRE 1999)

DEUG MIAS2 - MODULE INFORMATIQUE (MIA10B) EXAMEN (SEPTEMBRE 1999) coller l étiquette ici DEUG MIAS2 - MODULE INFORMATIQUE (MIA10B) EXAMEN (SEPTEMBRE 1999) Durée : 2 heures Aucun document autorisé - Calculatrices interdites Les réponses doivent être brèves et justifiées

Plus en détail

3 : LA COMPRESSION DE DONNEES

3 : LA COMPRESSION DE DONNEES 3 : LA COMPRESSION DE DONNEES Représentation de l information Algorithmique Langages et programmation Architectures matérielles CONNAISSANCES ABORDEES Numérisation : Coder sous forme d'un code standard

Plus en détail

les Formulaires / Sous-Formulaires Présentation...2 1. Créer un formulaire à partir d une table...3

les Formulaires / Sous-Formulaires Présentation...2 1. Créer un formulaire à partir d une table...3 Présentation...2 1. Créer un formulaire à partir d une table...3 2. Les contrôles :...10 2.1 Le contrôle "Intitulé"...11 2.2 Le contrôle "Zone de Texte"...12 2.3 Le contrôle «Groupe d options»...14 2.4

Plus en détail

Le programme utilise la librairie FOX Toolkit (http://www.fox-toolkit.org) pour son interface

Le programme utilise la librairie FOX Toolkit (http://www.fox-toolkit.org) pour son interface 1 EditHexa permet l'affichage d'un fichier en mode hexadécimal, il est en outre possible d'y apporter des modifications. Dans cette nouvelle version du programme, l affichage de plusieurs documents en

Plus en détail

Introduction à l'algorithmique II

Introduction à l'algorithmique II Introduction à l'algorithmique II CHAPITRE HAPITRE: : FICHIERS F ICHIERSET ET : F ENREGISTREMENTS ANNÉE NNÉE: 2014 : 2014-2015 Fichiers Lesfichiersservent à stocker des informations de manière permanente,

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

Introduction au codage de l information:

Introduction au codage de l information: Introduction au codage de l information: Quelques éléments d architecture de l ordinateur Comparaison de la carte perforée au DVD Pourquoi est-il nécessaire de coder l information? Numérisation Formats

Plus en détail

Cours Algorithmique, 2ème partie AS IUT

Cours Algorithmique, 2ème partie AS IUT Cours Algorithmique, 2ème partie AS IUT Cours 2 : Arbres Binaires Anne Vilnat http://www.limsi.fr/individu/anne/coursalgo Plan 1 Représentations arborescentes 2 Définition d un arbre binaire récursive

Plus en détail

Plan. Cours 4 : Méthodes d accès aux données. Architecture système. Objectifs des SGBD (rappel)

Plan. Cours 4 : Méthodes d accès aux données. Architecture système. Objectifs des SGBD (rappel) UPMC - UFR 99 Licence d informatique 205/206 Module 3I009 Cours 4 : Méthodes d accès aux données Plan Fonctions et structure des SGBD Structures physiques Stockage des données Organisation de fichiers

Plus en détail

AUTOMATISER SES TÂCHES AVEC LES MACROS

AUTOMATISER SES TÂCHES AVEC LES MACROS AUTOMATISER SES TÂCHES AVEC LES MACROS U ne macro est un ensemble de commandes qui s exécute autant de fois que nécessaire simplement en les appelant par son nom. Les macros permettent d automatiser les

Plus en détail

Principes généraux de codage entropique d'une source. Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph

Principes généraux de codage entropique d'une source. Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph Principes généraux de codage entropique d'une source Cours : Compression d'images Master II: IASIG Dr. Mvogo Ngono Joseph Table des matières Objectifs 5 Introduction 7 I - Entropie d'une source 9 II -

Plus en détail

Version 1.0 Rémi Veillette Juin 2004

Version 1.0 Rémi Veillette Juin 2004 Version 1.0 Rémi Veillette Juin 2004 TABLE DES MATIÈRES TABLE DES MATIÈRES...2 1- INTRODUCTION AU SOCIOGRAMME...4 Quelques notions de sociométrie...4 Le portrait de la classe...4 L avantage d un outil

Plus en détail

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,

Plus en détail

Projet 1 ENS Lyon L3IF

Projet 1 ENS Lyon L3IF Projet 1 ENS Lyon L3IF Génération de code Sébastien Briais 8 janvier 2008 Dans cette partie, vous allez devoir implémenter le générateur de code pour l émulateur DLX risc-emu. À rendre pour le 18 janvier

Plus en détail

Chapitre 5 LA COMPRESSION DES IMAGES NUMÉRIQUES

Chapitre 5 LA COMPRESSION DES IMAGES NUMÉRIQUES Chapitre 5 LA COMPRESSION DES IMAGES NUMÉRIQUES 91 PROBLÈMES TRANSMISSION / STOCKAGE Problèmes : Non compressée (c est-à-dire sous forme d un fichier BMP par exemple), une image couleur (en RVB) haute

Plus en détail

Projet informatique : segmentation d image par

Projet informatique : segmentation d image par Projet informatique : segmentation d image par «découpage-fusion» IN 101 ENSTA http://www.di.ens.fr/~pointche/enseignement/ensta/projet/ Résumé Le but de ce projet est de découper une image en régions

Plus en détail

Compilateurs : Analyse lexicale. Vous êtes ici 2. Analyse lexicale 4. Matthieu Amiguet. En entrée d un compilateur, on a généralement un fichier

Compilateurs : Analyse lexicale. Vous êtes ici 2. Analyse lexicale 4. Matthieu Amiguet. En entrée d un compilateur, on a généralement un fichier Compilateurs : Matthieu Amiguet 2009 2010 Vous êtes ici 2 Partie Avant Analyse syntaxique Analyse sémantique Arbre syntaxique abstrait (AST) Partie Arrière Optimisation de l AST Génération de code Optimisation

Plus en détail

ASSEMBLAGE ET ÉDITION DES LIENS

ASSEMBLAGE ET ÉDITION DES LIENS ASSEMBLAGE ET ÉDITION DES LIENS Mewtow 11 novembre 2015 Table des matières 1 Introduction 5 2 La chaine d assemblage 7 2.1 Résolution des symboles.............................. 7 2.2 Relocation.....................................

Plus en détail

Algorithmique, Structures de données et langage C

Algorithmique, Structures de données et langage C UNIVERSITE PAUL SABATIER TOULOUSE III Algorithmique, Structures de données et langage C L3 IUP AISEM/ICM Janvier 2005 J.M. ENJALBERT Chapitre 1 Rappels et compléments de C 1.1 Structures Une structure

Plus en détail