PC* Structure de pile
|
|
- Julie Eléonore Breton
- il y a 8 ans
- Total affichages :
Transcription
1 Structure de pile I. Définition I.1 Introduction I.2 Opérations caractérisant une structure de pile II. Utilisation d une pile III. Implantation III.1 Utilisation d un tableau III.2 Utilisation d une liste III.3 Un peu de programmation objet (en xième lecture...) /6
2 I. Définition I.1 Introduction Dans ce chapitre, on présente la strucure de pile, qui correspond exactement à l image traditionnelle d une pile d assiettes posée sur une table ; en particulier, on ne peut accéder qu au dernier élément ajouté (appelé le sommet de la pile). L image associée à une pile est donc «dernier arrivé, premier sorti»(en anglais last in, first out, parfois abrégé en LIFO). On peut bien sûr aussi imaginer une structure où, comme dans une file d attente, les éléments sortent dans leur ordre d arrivée, le premier élément sorti correspondant à l élément le plus anciennement arrivé (en anglais first in, first out) : on parle alors de structure de file, non au programme! I.2 Opérations caractérisant une structure de pile Une pile est une structure de données munie de quatre opérations, dont l exécution se fait en temps constant : crée_pile() qui crée une pile vide ; empile(p, x) qui empile x sur la pile p ; dépile(p) qui supprime de la pile p le dernier élément empilé, et renvoie sa valeur ; pile_vide(p) qui renvoie un booléen indiquant si la pile est vide ou non. On peut illustrer la structure de pile par l image suivante : pile (stack) empile (push) dépile (pop) Remarque. L exécution de chacune de ces 4 fonctions se fait en temps constant (donc si on appelle au total N fois ces fonctions au cours d un algorithme, la compexité de notre algorithme sera en O(N)). II. Utilisation d une pile Lorsque l on utilise une pile, on ne se préoccupe pas de son implantation, et on n utilise que les quatre fonctions de la définition. Exemple. Définir un fonction echange(p) qui échange l ordre des deux éléments les plus hauts dans la pile p. On peut modifier la fonction précédente pour qu elle déclenche une erreur si p n a pas deux éléments. 2/
3 Exemple. Pour les problèmes suivants, la structure de pile est-elle adaptée : gérer un répertoire téléphonique ; sortir d un labyrinthe ; stocker l historique des actions effectuées dans un logiciel, et disposer de la commande undo ; gérer la file d attente d une imprimante connectée à un réseau ; vérifier le parenthésage d une expression algébrique. La pile est une structure de données appropriée quand : on veut stocker des éléments dont le nombre est variable, a fortiori dont le cardinal maximum est inconnu à l avance on peut ou on doit se contenter d accéder au dernier élément stocké. Réciproquement, si on veut pouvoir accéder à un élément quelconque à tout moment, il faudra utiliser un tableau. III. Implantation Plusieurs implantations peuvent être proposées. III.1 Utilisation d un tableau Une première idée peut être d utiliser un tableau, dont la première case contient l indice de la première case disponible dans le tableau. # utilisation de tableau def pile_vide(nbmax=10000): """initialisation d'une pile vide""" pile = np.zeros(nbmax, np.int64) pile[0] = 1 return pile def empile(p, e): """fonction pour empiler l'élément e sur la pile p""" p[p[0]] = e p[0] += 1 def depile(p): """fonction pour dépiler un élément de p""" p[0] -= 1 return p[p[0]] def est_vide(p): """fonction pour tester si une pile est vide ou non""" return p[0] == 1 Remarque. Les opérations dépile et empile modifient le contenu de la pile passée en argument, mais ce n est pas le contenu des «nouvelles» piles qui est renvoyé par ces fonctions ; en particulier, la fonction empile ne renvoie rien. Remarque. Il n est pas proposé ici de gestion des erreurs. Quels sont les avantages et les inconvénients de cette implantation? /6
4 III.2 Utilisation d une liste Une autre implantation naturelle de la pile est celle utilisant une liste, et s appuyant sur les méthodes de listes pop et append. def nouvelle_pile (): """renvoie une pile vide""" return [] def pile_vide (p): """teste si la pile <p> est vide""" return len(p) == 0 def empile (p, x): """empile <x> sur la pile <p>""" p.append(x) def depile (p): """Supprime de la pile <p> le dernier élement empile, renvoie la valeur de cet élement""" return p.pop() Remarque. Il n est pas proposé ici de gestion des erreurs. Quels sont les avantages et les inconvénients de cette implantation? III.3 Un peu de programmation objet (en xième lecture...) On peut définir une nouvelle classe dont les instances seront les piles. class Pile(object): """définition d'une classe d'objets de type pile : dépilage du dernier empilé""" def init (self, nbmax=1000): """création d'une instance de classe""" self.pile = np.zeros(nbmax) self.hauteur = 0 def empile(self, e): """méthode pour empiler l'élément e sur l'instance de classe""" self.pile[self.hauteur] = e self.hauteur += 1 def depile(self): """méthode pour dépiler un élément de l'instance de classe""" self.hauteur -= 1 return self.pile[self.hauteur+1] def est_vide(self): """méthode pour tester si une pile est vide ou non""" return self.hauteur == 0 Remarque. Il n est pas proposé ici de gestion des erreurs. Quels sont les avantages et les inconvénients de cette implantation? On peut proposer d enrichir la classe en ajoutant des méthodes. 4/
5 /6 Exo 1 Un labyrinthe est représenté par un tableau numpy que l on peut charger directement avec l instruction : lab = np.load('pile_3_tableau_labyrinthe.npy') print(lab.shape) # (59, 59) Le tableau est constitué des valeurs 0.0 (représentant un mur) et 1.0 (représentant un couloir). On souhaite savoir s il existe un parcours par les couloirs joignant deux points donnés. On décrit l algorithme à mettre en œuvre de la façon suivante, où une pile est utilisée pour stocker les cases encore à explorer : Partant de la case (i 0, j 0 ) supposée blanche, on grise celle-ci et on l empile. La sortie n étant pas trouvée, on dépile une case. Parmi ses quatre cases voisines potentielles, on grise et on empile celles correspondant à un couloir. (1) Écrire une fonction sortiepossible(lab,i0,j0,i1,j1), qui prend en argument un tableau et deux cases, et qui renvoie le booléen indiquant si on peut rejoindre la case (i 1, j 1 ) depuis la case (i 0, j 0 ). (2) Cet algorithme est-il adapté au tracé d un chemin joignant deux cases d un labyrinthe? Exo 2 Évaluation d une expression algébrique postfixée La notation habituelle, pour une expression algébrique, s appelle la notation infixe : sin(3.14/4) + 1 Cette notation nécessite l utilisation de parenthèses ou de règles de priorités. Une autre notation est la notation postfixe : / sin 1 + Il s agit simplement d une autre représentation de la même expression algébrique. Définition : On appelle expression postfixée toute expression qui est : un nombre ; une expression postfixée suivie d une fonction ; deux expressions postfixées suivies d un opérateur binaire. Remarque : cette définition est récursive, car on utilise les expressions postfixées pour définir les expressions postfixées. (1) Proposer un algorithme utilisant une pile permettant d évaluer une expression postfixée. (2) On suppose que l expression algébrique est donnée par une chaîne de caractères, les nombres, fonctions et opérateurs étant séparés par des espaces. Comment transformer cette chaîne en la liste des nombres, fonctions, opérateurs? (3) Implanter l algorithme proposée à la première question, en privilégiant une approche modulaire du problème. (4) Vérifier avec l expression postfixée proposée en exemple l ordre de grandeur du résultat obtenu. 2016
6 Comment gérer des erreurs? assert test, message Ne pas l utiliser à tord et à travers, ça ne remplace pas un if... Si la condition test n est pas satisfaite, l exécution est interrompue, une exception est levée et le texte message s affiche. On préférera utiliser assert à des conditionnelles if lorsque l on voudra vérifier que les arguments d une fonction respectent certaines conditions. Pour comprendre, essayons un parallèle avec un exo de math! Imaginez l exo de math suivant : f = ln, montrer que x 0, f(x) =qqc de compliqué : vous n écrirez pas : si x 0, f(x) n existe pas, mais sinon (i.e. si x > 0) j essaie de faire l exo! Vous direz : il y a une erreur d énoncé, donc je ne cherche pas à faire l exo. Pour assert, c est pareil : si les arguments d une fonction python ne vérifient pas certaines conditions, pas besoin d exécuter cette fonction, ni tout le programme qui en découle (c est voué à l échec dès le départ), donc on interrompt l exécution à la source via le assert. Un exemple concret : on définit 4 fonctions, puis on les teste : def f1(): assert 1 < 2, "erreur f1" return "valeur 1" def f2(): assert 1 > 2, "erreur f2" return "valeur 2" def f3(): if 1 < 2: print ("le test 3 passe") else: print ("le test 3 ne passe pas") return "valeur 3" def f4(): if 1 > 2: print ("le test 4 passe") return "valeur 4" 1er test a1 = f1() print(a1) #valeur 1 a3 = f3() print(a3) #(avec le if, toute f3 #le test 3 passe #valeur 3 exécutée) a4 = f4() print(a4) #(et fonctions suivantes aussi exécutées) #valeur 4 a5 = "coucou" print(a5) #coucou 2ème test : a1 = f1() print(a1) #valeur 1 a3 = f3() print(a3) #(avec le if, toute f3 exécutée) #le test 3 passe #valeur 3 a4 = f4() print(a4) #(et fonctions suivantes aussi exécutées) #valeur 4 a2=f2() print(a2) #(exécution arrêtée) #Traceback (most recent call last): # File "assert.py", line 34, in <module> # a2 = f2() # File "assert.py", line 9, in f2 # assert 1 > 2, "erreur f2" #AssertionError: erreur f2 a5 = "coucou" print(a5) #(fonction suivante pas exécutée) 6/
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailCentre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :
Algorithmique et programmation : STRUCTURES DE DONNÉES A. Structure et enregistrement 1) Définition et rôle des structures de données en programmation 1.1) Définition : En informatique, une structure de
Plus en détailExercices 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étailLicence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...
Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez
Plus en détailGénie Logiciel avec Ada. 4 février 2013
Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre
Plus en détailLes 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étail1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Plus en détailTP 1. Prise en main du langage Python
TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer
Plus en détailCours de Programmation Impérative: Zones de mémoires et pointeurs
Cours de Programmation Impérative: Zones de mémoires et pointeurs Julien David A101 - david@lipn.univ-paris13.fr Julien David (A101 - david@lipn.univ-paris13.fr) 1 / 1 Z`o n`e s `d`e m`é m`o i r`e Julien
Plus en détailArchitecture des ordinateurs
Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?
Plus en détailLes 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étailMIS 102 Initiation à l Informatique
MIS 102 Initiation à l Informatique Responsables et cours : Cyril Gavoille Catherine Pannier Matthias Robine Marc Zeitoun Planning : 6 séances de cours 5 séances de TD (2h40) 4 séances de TP (2h40) + environ
Plus en détailCours 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étailSTAGE IREM 0- Premiers pas en Python
Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer
Plus en détailPerl Orienté Objet BioPerl There is more than one way to do it
Perl Orienté Objet BioPerl There is more than one way to do it Bérénice Batut, berenice.batut@udamail.fr DUT Génie Biologique Option Bioinformatique Année 2014-2015 Perl Orienté Objet - BioPerl Rappels
Plus en détail1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions
Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 4 : Fonctions La construction de fonctions dans un langage de programmation permet aux
Plus en détailChapitre 5 : Flot maximal dans un graphe
Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d
Plus en détailInitiation à la Programmation en Logique avec SISCtus Prolog
Initiation à la Programmation en Logique avec SISCtus Prolog Identificateurs Ils sont représentés par une suite de caractères alphanumériques commençant par une lettre minuscule (les lettres accentuées
Plus en détailIN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C
IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en
Plus en détailReprésentation d un entier en base b
Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir
Plus en détailCompilation (INF 564)
Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation
Plus en détailStructures dynamiques Listes chaînées
TC Informatique Structures de données abstraites PC N 4 30 Novembre 2000 François Siion Structures dynamiques Listes chaînées http://w3.edu.poytechnique.fr/informatique Représenter un ensembe d'ééments
Plus en détailInitiation à l algorithmique
Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -
Plus en détailOCL - Object Constraint Language
OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object
Plus en détailProbabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12
Probabilités. I - Rappel : trois exemples. Exemple 1 : Dans une classe de 25 élèves, il y a 16 filles. Tous les élèves sont blonds ou bruns. Parmi les filles, 6 sont blondes. Parmi les garçons, 3 sont
Plus en détailRecherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Plus en détailUniversité Paris-Dauphine DUMI2E 1ère année, 2009-2010. Applications
Université Paris-Dauphine DUMI2E 1ère année, 2009-2010 Applications 1 Introduction Une fonction f (plus précisément, une fonction réelle d une variable réelle) est une règle qui associe à tout réel x au
Plus en détailLicence Sciences et Technologies Examen janvier 2010
Université de Provence Introduction à l Informatique Licence Sciences et Technologies Examen janvier 2010 Année 2009-10 Aucun document n est autorisé Les exercices peuvent être traités dans le désordre.
Plus en détailLes classes en Python
CHAPITRE 1 Les classes en Python Le mécanisme de classe en Python permet d introduire les classes avec un minimum de syntaxe et sémantique nouvelles. Les caractéristiques les plus importantes des classes
Plus en détailStructure d un programme
Architecture des ordinateurs Cours 6 Structure d un programme 3 décembre 2012 Archi 1/30 Programme en Assembleur Archi 2/30 Sections de données programme en assembleur = fichier texte (extension.asm) organisé
Plus en détailOrdonnancement temps réel
Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches
Plus en détailAlgorithmique, 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étailInitiation à la programmation en Python
I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de
Plus en détailCours 7 : Utilisation de modules sous python
Cours 7 : Utilisation de modules sous python 2013/2014 Utilisation d un module Importer un module Exemple : le module random Importer un module Exemple : le module random Importer un module Un module est
Plus en détail1 Recherche en table par balayage
1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément
Plus en détailExercices INF5171 : série #3 (Automne 2012)
Exercices INF5171 : série #3 (Automne 2012) 1. Un moniteur pour gérer des ressources Le moniteur MPD 1 présente une première version d'un moniteur, exprimé en pseudo-mpd, pour gérer des ressources le nombre
Plus en détailClasses et Objets en Ocaml.
Classes et Objets en Ocaml. Didier Rémy 2001-2002 http://cristal.inria.fr/ remy/mot/2/ http://www.enseignement.polytechnique.fr/profs/informatique/didier.remy/mot/2/ Cours Exercices Slide 1 1. Objets 2.
Plus en détailCours de Probabilités et de Statistique
Cours de Probabilités et de Statistique Licence 1ère année 2007/2008 Nicolas Prioux Université Paris-Est Cours de Proba-Stat 2 L1.2 Science-Éco Chapitre Notions de théorie des ensembles 1 1.1 Ensembles
Plus en détailDéfinitions. Numéro à préciser. (Durée : )
Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.
Plus en détailJava Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Plus en détailChap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1
Chap 4: Analyse syntaxique 1 III- L'analyse syntaxique: 1- Le rôle d'un analyseur syntaxique 2- Grammaires non contextuelles 3- Ecriture d'une grammaire 4- Les méthodes d'analyse 5- L'analyse LL(1) 6-
Plus en détail1 Lecture de fichiers
Programmation 1 Cours n 6 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot 1 Lecture de fichiers Un fichier est une suite de caractères mémorisés sur le disque dur de la machine dans un endroit
Plus en détailCours de Programmation 2
Cours de Programmation 2 Programmation à moyenne et large échelle 1. Programmation modulaire 2. Programmation orientée objet 3. Programmation concurrente, distribuée 4. Programmation monadique 5. Les programmes
Plus en détailUniversité Bordeaux 1, Licence Semestre 3 - Algorithmes et struct...
Université Bordeaux 1 table des matières Licence Semestre 3 - Algorithmes et structures de données 1 Dernière mise à jour effectuée le 23 Octobre 2013 Piles et Files Déitions Primitives de piles, exemples
Plus en détail2 Comment fonctionne un ordinateur, dans les grandes lignes
Programmation 1 Cours n 1 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot Les notes de cours et les feuilles de TD sont disponibles (avec un peu de retard par rapport au déroulement du cours)
Plus en détail1. Structure d'un programme FORTRAN 95
FORTRAN se caractérise par la nécessité de compiler les scripts, c'est à dire transformer du texte en binaire.(transforme un fichier de texte en.f95 en un executable (non lisible par un éditeur) en.exe.)
Plus en détailDe même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que
Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer
Plus en détailPrésentation du langage et premières fonctions
1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en
Plus en détailInitiation. àl algorithmique et à la programmation. en C
Initiation àl algorithmique et à la programmation en C Initiation àl algorithmique et à la programmation en C Cours avec 129 exercices corrigés Illustration de couverture : alwyncooper - istock.com Dunod,
Plus en détailCours 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étailINITIATION 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étailUML et les Bases de Données
CNAM UML et les Bases de Données UML et les Bases de Données. Diagramme de classes / diagramme d objets (UML)...2.. Premier niveau de modélisation des données d une application...2.2. Les éléments de modélisation...2.2..
Plus en détailCalcul Formel et Numérique, Partie I
Calcul Formel et Numérique N.Vandenberghe nvdb@irphe.univ-mrs.fr Table des matières 1 Introduction à Matlab 2 1.1 Quelques généralités.......................... 2 2 Où trouver des informations 2 3 Opérations
Plus en détailMachines virtuelles fonctionnelles (suite) Compilation ML Java
Machines virtuelles fonctionnelles (suite) Compilation ML Java Cours de Compilation Avancée (MI190) Benjamin Canou Université Pierre et Maire Curie Année 2011/2012 Semaine 3 Machines virtuelles fonctionnelles
Plus en détailLes algorithmes de base du graphisme
Les algorithmes de base du graphisme Table des matières 1 Traçage 2 1.1 Segments de droites......................... 2 1.1.1 Algorithmes simples.................... 3 1.1.2 Algorithmes de Bresenham (1965).............
Plus en détailArchitecture des ordinateurs TD1 - Portes logiques et premiers circuits
Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice
Plus en détailL informatique en BCPST
L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité
Plus en détailCours d initiation à la programmation en C++ Johann Cuenin
Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................
Plus en détailAlgorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Plus en détailLes bases du langage Python
Laboratoire de mathématiques d'orsay 6 décembre 2010 Plan 1 Présentation de Python 2 Les types et les opérations de base 3 Les structures de contrôle 4 Les fonctions 5 Les chiers 6 Les classes 7 Les exceptions
Plus en détailPlan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml
OCL Object Constraint Language Le langage de contraintes d'uml Plan 1. Introduction 2. Les principaux concepts d'ocl Object Constraint Language 1 Object Constraint Language 2 Exemple: une application bancaire
Plus en détailPrénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Plus en détailM é ca n ism e Pr o lo g. Ex e m p le
M é ca n ism e Pr o lo g Principe général : 5. on élimine L du but (le but est géré comme une pile de clauses) 1. on prend dans le but (clause ne contenant que des littéraux négatifs) le premier littéral
Plus en détailLEÇON N 7 : Schéma de Bernoulli et loi binomiale. Exemples.
LEÇON N 7 : Schéma de Bernoulli et loi binomiale. Exemples. Pré-requis : Probabilités : définition, calculs et probabilités conditionnelles ; Notion de variables aléatoires, et propriétés associées : espérance,
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailDéroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009
Déroulement Algorithmes et structures de données Cours 1 et 2 Patrick Reuter http://www.labri.fr/~preuter/asd2009 CM mercredi de 8h00 à 9h00 (Amphi Bât. E, 3 ème étage) ED - Groupe 3 : mercredi, 10h30
Plus en détailConventions 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étailStructure fonctionnelle d un SGBD
Fichiers et Disques Structure fonctionnelle d un SGBD Requetes Optimiseur de requetes Operateurs relationnels Methodes d acces Gestion de tampon Gestion de disque BD 1 Fichiers et Disques Lecture : Transfert
Plus en détailArbres binaires de recherche
1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de
Plus en détailStructures algébriques
Structures algébriques 1. Lois de composition s Soit E un ensemble. Une loi de composition interne sur E est une application de E E dans E. Soient E et F deux ensembles. Une loi de composition externe
Plus en détailCorrection de l examen de la première session
de l examen de la première session Julian Tugaut, Franck Licini, Didier Vincent Si vous trouvez des erreurs de Français ou de mathématiques ou bien si vous avez des questions et/ou des suggestions, envoyez-moi
Plus en détailIntégration et probabilités TD1 Espaces mesurés Corrigé
Intégration et probabilités TD1 Espaces mesurés Corrigé 2012-2013 1 Petites questions 1 Est-ce que l ensemble des ouverts de R est une tribu? Réponse : Non, car le complémentaire de ], 0[ n est pas ouvert.
Plus en détailCréation de coupons de vaccination
Accueil Bienvenue sur l interface de génération de coupons de vaccination Interface destinée à la génération de coupons. Connexion à AMELI-COUPON Saisissez votre identifiant* Attention! La connexion à
Plus en détailAssembleur. Faculté I&C, André Maurer, Claude Petitpierre
Assembleur Faculté I&C, André Maurer, Claude Petitpierre INTRODUCTION Logiciel utilisé Faculté I&C, André Maurer, Claude Petitpierre MEMOIRE Mémoire Faculté I&C, André Maurer, Claude Petitpierre Mémoire
Plus en détailINTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores
INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN
Plus en détailLicence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Plus en détailMachines virtuelles. Brique ASC. Samuel Tardieu sam@rfc1149.net. Samuel Tardieu (ENST) Machines virtuelles 1 / 40
Machines virtuelles Brique ASC Samuel Tardieu sam@rfc1149.net École Nationale Supérieure des Télécommunications Samuel Tardieu (ENST) Machines virtuelles 1 / 40 Machines virtuelles La compilation peut
Plus en détailQuelques Algorithmes simples
Quelques Algorithmes simples Irène Guessarian ig@liafa.jussieu.fr 10 janvier 2012 Je remercie Patrick Cegielski de son aide efficace pour la programmation Java ; la section sur le codage de Huffman a été
Plus en détailOrganigramme / Algorigramme Dossier élève 1 SI
Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué
Plus en détailChapitre 7 : Intégration sur un intervalle quelconque
Universités Paris 6 et Paris 7 M1 MEEF Analyse (UE 3) 2013-2014 Chapitre 7 : Intégration sur un intervalle quelconque 1 Fonctions intégrables Définition 1 Soit I R un intervalle et soit f : I R + une fonction
Plus en détailALGORITHMIQUE ET PROGRAMMATION En C
Objectifs ALGORITHMIQUE ET PROGRAMMATION Une façon de raisonner Automatiser la résolution de problèmes Maîtriser les concepts de l algorithmique Pas faire des spécialistes d un langage Pierre TELLIER 2
Plus en détailtd3a correction session7az
td3a correction session7az August 19, 2015 1 Séance 7 : PIG et JSON et streaming avec les données vélib (correction avec Azure) Plan Récupération des données Connexion au cluster et import des données
Plus en détailProgrammation linéaire
1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit
Plus en détailApplication 1- VBA : Test de comportements d'investissements
Application 1- VBA : Test de comportements d'investissements Notions mobilisées Chapitres 1 à 5 du cours - Exemple de récupération de cours en ligne 1ère approche des objets (feuilles et classeurs). Corps
Plus en détailGPA770 Microélectronique appliquée Exercices série A
GPA770 Microélectronique appliquée Exercices série A 1. Effectuez les calculs suivants sur des nombres binaires en complément à avec une représentation de 8 bits. Est-ce qu il y a débordement en complément
Plus en détailPython - introduction à la programmation et calcul scientifique
Université de Strasbourg Environnements Informatique Python - introduction à la programmation et calcul scientifique Feuille de TP 1 Avant de commencer Le but de ce TP est de vous montrer les bases de
Plus en détailThéorie des Langages
Théorie des Langages Analyse syntaxique descendante Claude Moulin Université de Technologie de Compiègne Printemps 2010 Sommaire 1 Principe 2 Premiers 3 Suivants 4 Analyse 5 Grammaire LL(1) Exemple : Grammaire
Plus en détailCorrigé des TD 1 à 5
Corrigé des TD 1 à 5 1 Premier Contact 1.1 Somme des n premiers entiers 1 (* Somme des n premiers entiers *) 2 program somme_entiers; n, i, somme: integer; 8 (* saisie du nombre n *) write( Saisissez un
Plus en détailMaster 1 ère année. UE Réseaux Avancés I. Corrections décembre 2012. Durée : 2h Documents autorisés
Master 1 ère année UE Réseaux Avancés I Corrections décembre 2012 Durée : 2h Documents autorisés NetFilter & Gestion de congestion (12 points) 1 Le responsable d une petite entreprise vous appelle pour
Plus en détailTests non-paramétriques de non-effet et d adéquation pour des covariables fonctionnelles
Tests non-paramétriques de non-effet et d adéquation pour des covariables fonctionnelles Valentin Patilea 1 Cesar Sanchez-sellero 2 Matthieu Saumard 3 1 CREST-ENSAI et IRMAR 2 USC Espagne 3 IRMAR-INSA
Plus en détailPROBABILITES ET STATISTIQUE I&II
PROBABILITES ET STATISTIQUE I&II TABLE DES MATIERES CHAPITRE I - COMBINATOIRE ELEMENTAIRE I.1. Rappel des notations de la théorie des ensemble I.1.a. Ensembles et sous-ensembles I.1.b. Diagrammes (dits
Plus en détailPourquoi l apprentissage?
Pourquoi l apprentissage? Les SE sont basés sur la possibilité d extraire la connaissance d un expert sous forme de règles. Dépend fortement de la capacité à extraire et formaliser ces connaissances. Apprentissage
Plus en détail* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours
Exo7 Continuité (étude globale). Diverses fonctions Exercices de Jean-Louis Rouget. Retrouver aussi cette fiche sur www.maths-france.fr * très facile ** facile *** difficulté moyenne **** difficile *****
Plus en détailDécouverte de Python
Découverte de Python Python est un des langages informatiques au programme des concours à partir de la session 2015. Ce tutoriel vous permettra de vous mettre à peu près à niveau de ce qui a été fait en
Plus en détailProgrammation avec Xcas ou Python
Programmation avec Xcas ou Python G. Aldon - J. Germoni - J.-M. Mény IREM de Lyon Mars 2012 GA, JG, JMM (IREM de Lyon) programmer xcas python Mars 2012 1 / 20 Éditeur Xcas Environnement Le texte d un programme
Plus en détailI. Introduction aux fonctions : les fonctions standards
Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 Année 2004-2005 Auteur : Frédéric Vernier Semaine : 11-16 octobre 2004 Conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détailCompléments de documentation Scilab : affichage de texte et formatage de nombres
Université des Sciences et Technologies de Lille U.F.R. de Mathématiques Pures et Appliquées Agrégation externe Année 2002-2003 Compléments de documentation Scilab : affichage de texte et formatage de
Plus en détailCalculabilité Cours 3 : Problèmes non-calculables. http://www.irisa.fr/lande/pichardie/l3/log/
Calculabilité Cours 3 : Problèmes non-calculables http://www.irisa.fr/lande/pichardie/l3/log/ Problèmes et classes de décidabilité Problèmes et classes de décidabilité Nous nous intéressons aux problèmes
Plus en détail