Informatique TP5 : Manipulations de chaînes et de listes CPP 1A
|
|
- Auguste Alain
- il y a 6 ans
- Total affichages :
Transcription
1 Informatique TP5 : Manipulations de chaînes et de listes CPP 1A Frederic Devernay, Julie Dumas, Maxime Montoya, Matthieu Moy Mars - avril 2017 Pour commencer, veuillez télécharger l archive squelettes_tp5.zip qui contient les squelettes de tous les exercices de ce TP. Attention à ne pas travailler directement dans le fichier zip, vous devez extraire les fichiers avant. 1 Manipulation de chaînes de caractères La bibliothèque standard de Python contient beaucoup de fonctions de manipulations de chaînes évoluées. Le but ici est de retrouver les algorithmes sans utiliser ces fonctions. Le but de cette partie est d écrire une fonction recherche_mot(m, t) qui recherche le mot m dans le texte t. m et t sont deux chaînes de caractères. L algorithme est le suivant : pour chaque position i à l intérieur de la chaîne t, on va vérifier si m correspond à la sous-chaîne de t démarrant à l indice i. Exercice 1 Écrire une fonction coincide(t, i, m) qui renvoie True si la sous-chaîne de t démarrant à l indice i et de la même longueur que m est égale à m, et False sinon. Par exemple, coincide("ceci est un test de texte", 12, "test") et coincide("ceci est un test de texte", 0, "ceci") renvoient True, mais coincide("ceci est un test de texte", 11, "test") renvoie False. Exercice 2 (Recherche de sous-chaîne) En utilisant la fonction coincide(t, i, m), écrire une fonction recherche_mot(m, t) qui renvoie l indice de t où se trouve le mot m s il existe, et la valeur None sinon. Vérifiez sur quelques exemples que la fonction fonctionne comme prévu. Exercice 3 (Complexité) Quelle est la complexité de cet algorithme? En pratique, on sait faire beaucoup mieux que cet algorithme, et arriver à un coût linéaire après un pré-traitement de la chaîne à rechercher (algorithme de Knuth-Morris-Pratt par exemple). Les mêmes algorithmes peuvent être utilisés avec autre chose que des chaînes de caractères (exemple : recherche d un gêne dans une séquence d ADN). 1
2 2 Manipulation de listes Rappels : 1 Une liste en python est un conteneur permettant de regrouper plusieurs données de natures différentes. Ces données peuvent ensuite être accédées grâce à leurs numéros d emplacement, appelé indice. # Cr é ation d' une liste vide >>> maliste = [] # liste vide >>> maliste = [-5, " bonjour ", 1. 2] # liste avec des valeurs initiales # Lire / modifier un é l é ment >>> maliste [0] # Lire la valeur à l' indice 0-5 >>> maliste [0] = 10 # remplacer la valeur à l' indice 0 par 10 [10, " bonjour ", 1.2, 42] # Ajouter un é l é ments dans une liste >>> maliste. append ( 42) # Ajoute 42 en fin de liste >>> maliste. insert (0, " slt ") # Ajoute " slt " à l' indice 0 (dé but de liste ) [" slt ", 10, " bonjour ", 1.2, 42] # Supprimer un élé ment d' une liste >>> del maliste [3] # Supprime l' é l é ment à l' indice 3 [" slt ", 10, " bonjour ", 42] >>> maliste. remove (" bonjour ") # Supprime l' élé ment " Bonjour " [" slt ", 10, 42] Exercice 4 (Première occurrence) Écrivez une fonction occurrence(liste, valeur) qui renvoie l indice de la première occurence de l élément valeur dans liste liste. La fonction devra renvoyer None s il n y a aucun élément valeur dans la liste. Exemple : si liste = [-4, 3, 7, 3], alors occurrence(liste, 3) renverra : 1 et occurrence(liste, 5) renverra : None Exercice 5 (Nombre d occurrences) Écrivez une fonction nb_occurrences(liste, valeur) qui renvoie le nombre d occurences de l élément valeur contenu dans la liste liste. Exercice 6 (Intercalage) Soient les listes suivantes : L1 = ["janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre"] L2 = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] Écrivez un programme qui crée une nouvelle liste L3. Celle-ci devra contenir tous les éléments de L1 et L2 en les alternant, de telle manière que chaque nom de mois soit suivi du nombre de jours correspondant : ["janvier", 31, "février", 29,..., "décembre", 31] Exercice 7 (Fusion de listes triées) Soient L1 et L2 deux listes triées dans l ordre croissant. Écrivez un fonction fusion(l1, L2) qui fusionne L1 et L2 dans une troisième liste L3, de telle 1. cf : TP N o 4 2
3 sorte que L3 soit aussi triée dans l ordre croissant. Par exemple si L1=[5, 7, 25] et L2=[3, 15, 16, 17, 20], fusion(l1, L2) retournera L3=[3, 5, 7, 15, 16, 17, 20, 25]. Quelle est la complexité de cette opération? Exercice 8 (découpage) Soit la liste L = [35, 72, -5, 50, 24, 19]. Ecrivez un programme qui crée deux nouvelles listes Lpaire et Limpaire, de telle sorte que Lpaire contienne tous les éléments pairs L et Limpaire tous les éléments impairs de L. Faites varier les éléments de L et vérifiez que votre programme fonctionne correctement. 3 Listes de Listes En python une liste peut en contenir une ou plusieurs autres, on parle alors d une liste de listes, ou encore d une à deux dimensions. Le fonctionnement reste analogiquement identique. # Cr é ation d' une liste de listes >>> maliste = [[3, 1], [5, -1], [2, 9]] # Ajouter une liste dans une liste >>> maliste. append ([20, 87]) [[3, 1], [5, -1], [7, 9], [20, 87]] # Acc ès >>> maliste [2] [7,9] >>> maliste [2][0] 7 >>> maliste [2][1] 9 >>> maliste [ 3][ 1] = -100 [[3, 1], [5, -1], [7, 9], [20, -100]] # Taille de la liste >>> len ( maliste ) 4 # Taille de liste à l' indice 0 >>> len ( maliste [0]) 2 Exercice 9 Soit la liste suivante : liste = [[0, "zéro"], [1, "un"], [2, "deux"], [3, "trois"], [4, "quatre"], [5, "cinq"], [6, "six"], [7, "sept"], [8, "huit"], [9, "neuf"] ]. Écrivez un programme permettant d afficher cette liste sous la forme : 0 s écrit : zéro 1 s écrit : un etc. Bonus : Tri À présent, notre objectif d écrire une fonction permettant de trier une liste d entiers dans l ordre croissant avec la méthode du tri par sélection, que vous verrez prochainement en cours. Pour cela, nous allons procéder comme suit : On veut trier la liste L 3
4 1. On crée une liste vide : maliste 2. Tant que L n est pas vide 3. On calcule min = plus petit élément de L 4. On supprime min de L 5. On ajoute min à maliste 6. On recommence à l étape N o 2 Pour vous guider dans l implémentation, un squelette de programme vous est fourni dans le fichier trie.py Exercice 10 Compléter la fonction minimum(liste) qui calcule et renvoie le plus petit élément de liste passée en argument. Exercice 11 Compléter la fonction trie(liste) pour réliser l opération de trie avec la méthode décrite ci-dessus. Quelle est la compléxité de cette opération? 4
5 4 Solutions def def def Exercice 1 : En n utilisant que les opérations de base : coincide (t, i, m): for j in range ( len (m )): if t[i + j]!= m[j]: return False # On a trouv é une diff é rence, pas # la peine de continuer la boucle. # Si on arrive ici, c' est que la boucle a termin é et qu' on # a compar é tous les caract è res. Les chaines coincident. return True Une autre solution en utilisant les tranches de tableaux Python : coincide (t, i, m): return t[i:i + len (m)] == m Exercice 2 : recherche_mot (m, t): for i in range (1 + len (t) - len (m )): if coincide (t, i, m): return i return None Exercice 3 : La fonction coincide fait len(m) itérations dans le pire cas. Elle est appelée 1 + len(t) - len(m) fois. La complexité est donc len(m) (1 + len(t) - len(m)) (pire cas). Exercice 4 : def occurrence ( liste, valeur ): if liste [i] == valeur : return i return None Exercice 5 def nb_ occurrences ( liste, valeur ): nb = 0 if liste [i] == valeur : nb = nb + 1 return nb Exercice 6 L3 = [] for i in range ( len (L1 )): L3. append (L1[i]) L3. append (L2[i]) Exercice 7 def fusion (L1, L2 ): L3 = [] i1 = 0 i2 = 0 while (i1 < len (L1 )) and (i2 < len (L2 )): if L1[i1] <= L2[i2 ]: L3. append (L1[i1 ]) i1 = i
6 L3. append (L2[i2 ]) i2 = i2 + 1 # Arriv é ici, L1 ou L2 n' a plus d' élé ment disponible if i1 < len (L1 ): for i in range (i1, len (L1 )): L3. append (L1[i]) #i2 < len (L2) for i in range (i2, len (L2 )): L3. append (L2[i]) return L3 Dans cette version, on fait une boucle tant qu il reste des éléments dans les deux listes, puis on traite le cas particulier où l une est vide. Une autre solution est de boucler tant qu il reste des éléments dans l une des listes : def fusion (L1, L2 ): L3 = [] i1 = 0 i2 = 0 while i1 < len (L1) or i2 < len (L2 ): if i1 == len (L1 ): # Plus d' é l é ment dans L1, on pioche dans L2 pioche = L2 elif i2 == len ( L2 ): # Plus d' é l é ment dans L2, on pioche dans L1 pioche = L1 elif L1[i1] < L2[i2 ]: pioche = L1 pioche = L2 # On sait o ù piocher, on peut avancer : if pioche == L1: L3. append (L1[i1 ]) i1 = i1 + 1 L3. append (L2[i2 ]) i2 = i2 + 1 return L3 Exercice 8 Lpaire = [] Limpaire = [] for i in range ( len (L )): if L[i] % 2 == 0: Lpaire. append (L[i]) Limpaire. append (L[i]) Exercice 9 # methode 1 print ( liste [i ][0], "s' é crit : ", liste [i ][1]) # methode 2 for elm in liste : print ( elm [0], "s' é crit : ", elm [1]) Exercice 10 6
7 def minimum ( liste ): min = liste [0] if liste [i] < min : min = liste [i] return min Exercice 11 def trie (L): maliste = [] while len (L) > 0: min = minimum (L) L. remove ( min ) maliste. append ( min ) return maliste La complexité du calcul du minimum d une liste non triée de taille N est linéaire par rapport à N : O(N). La fonction trie réalise N calculs de minimums, et à chaque fois, la liste est diminuée d un élément : O(N) + O(N 1) + O(N 2) O(N (N 1)) = O( N(N 1) 2 ) O(N 2 ) 7
Initiation à 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é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é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é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é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étail1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
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é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étailAlgorithmes récursifs
Licence 1 MASS - Algorithmique et Calcul Formel S. Verel, M.-E. Voge www.i3s.unice.fr/ verel 23 mars 2007 Objectifs de la séance 3 écrire des algorithmes récursifs avec un seul test rechercher un élément
Plus en détailCours 3 : Python, les conditions
Cours 3 : Python, les conditions Conditions Permet d'exécuter des ordres dans certaines conditions : if condition1: code exécuté si condition1 est vraie code exécuté si condition1 est vraie... elif condition2:
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étail1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert
1 de 46 Algorithmique Trouver et Trier Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 46 Algorithmes et structures de données La plupart des bons algorithmes
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étailAlgorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/??
Algorithmique I Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement
Plus en détailÉléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Plus en détailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
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é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é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é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é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étailTD3: tableaux avancées, première classe et chaînes
TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première
Plus en détailCours d algorithmique pour la classe de 2nde
Cours d algorithmique pour la classe de 2nde F.Gaudon 10 août 2009 Table des matières 1 Avant la programmation 2 1.1 Qu est ce qu un algorithme?................................. 2 1.2 Qu est ce qu un langage
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é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étailUtilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Plus en détailLogiciel Libre Cours 3 Fondements: Génie Logiciel
Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/
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étailProgrammation C++ (débutant)/instructions for, while et do...while
Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de
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étailTP Bases de données réparties
page 1 TP Bases de données réparties requêtes réparties Version corrigée Auteur : Hubert Naacke, révision 5 mars 2003 Mots-clés: bases de données réparties, fragmentation, schéma de placement, lien, jointure
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é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étailIntroduction à MATLAB R
Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d
Plus en détailCours Informatique Master STEP
Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions
Plus en détailENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque
1 ENDNOTE X2 SOMMAIRE 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque 2. Manipuler une bibliothèque EndNote 2.1. La saisie
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é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étailCours 1 : La compilation
/38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà
Plus en détailAWS avancé. Surveiller votre utilisation d EC2
10 AWS avancé Dans ce chapitre, nous bâtirons sur les bases que nous avons apprises jusqu ici. Nous étudierons des sujets plus avancés tels que la surveillance de votre utilisation d AWS, l utilisation
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étailTP 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é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étailGrandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
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 = <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étailDM 1 : Montre Autoquartz ETA
Lycée Masséna DM 1 : Montre Autoquartz ETA 1 Présentation de la montre L essor de l électronique nomade s accompagne d un besoin accru de sources d énergies miniaturisées. Les contraintes imposées à ces
Plus en détailSNT4U16 - Initiation à la programmation 2014-2015. TD - Dynamique de POP III - Fichiers sources
SNT4U16 - Initiation à la programmation Licence SVT 2 ème année 2014-2015 TD - Dynamique de POP III - Fichiers sources contacts : mathias.gauduchon@univ-amu.fr, melika.baklouti@univ-amu.fr, xavier.giraud@univ-amu.fr,
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étailLes deux points les plus proches
MPSI Option Informatique Année 2001, Deuxième TP Caml Vcent Simonet (http://cristal.ria.fr/~simonet/) Les eux pots les plus proches Lors e cette séance, nous allons nous téresser au problème suivant :
Plus en détailTP3 : Manipulation et implantation de systèmes de fichiers 1
École Normale Supérieure Systèmes et réseaux Année 2012-2013 TP3 : Manipulation et implantation de systèmes de fichiers 1 1 Répertoire de travail courant Le but de l exercice est d écrire une commande
Plus en détailTP, première séquence d exercices.
TP, première séquence d exercices. Benoît Valiron benoit.valiron@lipn.univ-paris13.fr 7 novembre 2010 Introduction Vous écrirez les réponses aux questions courtes sur une feuille à rendre à la fin de la
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
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étailCours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Plus en détailALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII
ALGORITHMIQUE II NOTION DE COMPLEXITE 1 2 Comment choisir entre différents algorithmes pour résoudre un même problème? Plusieurs critères de choix : Exactitude Simplicité Efficacité (but de ce chapitre)
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étailTP : Gestion d une image au format PGM
TP : Gestion d une image au format PGM Objectif : L objectif du sujet est de créer une classe de manipulation d images au format PGM (Portable GreyMap), et de programmer des opérations relativement simples
Plus en détailintroduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives
introduction Chapitre 5 Images récursives http ://univ-tln.fr/~papini/sources/flocon.htm Récursivité http://www.poulain.org/fractales/index.html Image qui se contient elle-même 1 Exemples mathématiques
Plus en détailCours 1 : Qu est-ce que la programmation?
1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre
Plus en détailTravaux 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étailLES REGLEMENTS AVEC SOCIEL.NET DERNIERE MISE A JOUR : le 14 juin 2010
LES REGLEMENTS AVEC SOCIEL.NET DERNIERE MISE A JOUR : le 14 juin 2010 Guillaume Informatique 10 rue Jean-Pierre Blachier 42150 La Ricamarie Tél. : 04 77 36 20 60 - Fax : 04 77 36 20 69 - Email : info@guillaume-informatique.com
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étailUtilisez Toucan portable pour vos sauvegardes
Utilisez Toucan portable pour vos sauvegardes Préambule Toucan est un logiciel libre et gratuit, permettant de réaliser des sauvegardes ou synchronisation de vos données. Il est possible d automatiser
Plus en détailDécompresser, créer une archive au format «ZIP»
Décompresser, créer une archive au format «ZIP» Qu'est-ce qu'une archive? Une archive est tout simplement une collection de fichiers stockée dans un fichier unique. Rien de plus, rien de moins. Il existe
Plus en détailProgramme Compte bancaire (code)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; Programme Compte bancaire (code) namespace compte_bancaire /// Classe Program public
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étailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Plus en détail1 Description générale de VISFIELD
Guide d utilisation du logiciel VISFIELD Yann FRAIGNEAU LIMSI-CNRS, Bâtiment 508, BP 133 F-91403 Orsay cedex, France 11 décembre 2012 1 Description générale de VISFIELD VISFIELD est un programme écrit
Plus en détailChapitre 2 Devine mon nombre!
Python 3 : objectif jeux Chapitre 2 Chapitre 2 Devine mon nombre! 2.1. Thèmes abordés dans ce chapitre commentaires modules externes, import variables boucle while condition : if... elif... else la fonction
Plus en détailContexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,
Non-linéarité Contexte Pour permettre aux algorithmes de cryptographie d être sûrs, les fonctions booléennes qu ils utilisent ne doivent pas être inversées facilement. Pour cela, elles doivent être très
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étailUTILISER UN SITE COLLABORATIF
Sites collaboratifs Pléiade : guide utilisateur détaillé 1 Sites collaboratifs Pléiade : guide utilisateur détaillé UTILISER UN SITE COLLABORATIF COMMENT UTILISER LE BLOG Sites collaboratifs Pléiade :
Plus en détailIntroduction à l algorithmique et à la programmation (Info 2)
Introduction à l algorithmique et à la programmation (Info 2) Premier cours: présentation du module, codage et définition de l algorithmique Matthieu Puigt IUT du Littoral Côte d Opale DUT Génie Industriel
Plus en détailAnne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2
Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................
Plus en détailCondition inf-sup pour l Elément Fini de Taylor-Hood È ¾ -iso-è ½
Condition inf-sup pour l Elément Fini de Taylor-Hood È ¾ -iso-è ½ Patrick Ciarlet et Vivette Girault ciarlet@ensta.fr & girault@ann.jussieu.fr ENSTA & Laboratoire Jacques-Louis Lions, Paris 6 Condition
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étailUEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Plus en détailMISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES. Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année
2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique 2 ème année MISE A NIVEAU INFORMATIQUE LANGAGE C - EXEMPLES DE PROGRAMMES Maude Manouvrier La reproduction de ce document par
Plus en détail= constante et cette constante est a.
Le problème Lorsqu on sait que f(x 1 ) = y 1 et que f(x 2 ) = y 2, comment trouver l expression de f(x 1 )? On sait qu une fonction affine a une expression de la forme f(x) = ax + b, le problème est donc
Plus en détailConception de circuits numériques et architecture des ordinateurs
Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique
Plus en détailPar combien de zéros se termine N!?
La recherche à l'école page 79 Par combien de zéros se termine N!? par d es co llèg es An dré Do ucet de Nanterre et Victor Hugo de Noisy le Grand en seignants : Danielle Buteau, Martine Brunstein, Marie-Christine
Plus en détailLes dossiers compressés (ou zippés)
Les dossiers compressés (ou zippés) (source : Site du Zéro : http://www.siteduzero.com/tutoriel-3-460502-archiver-et-compresser.html) Archiver et compresser Quand on parle de mémoire en informatique, une
Plus en détailV- Manipulations de nombres en binaire
1 V- Manipulations de nombres en binaire L ordinateur est constitué de milliards de transistors qui travaillent comme des interrupteurs électriques, soit ouverts soit fermés. Soit la ligne est activée,
Plus en détailCryptographie RSA. Introduction Opérations Attaques. Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1
Cryptographie RSA Introduction Opérations Attaques Cryptographie RSA NGUYEN Tuong Lan - LIU Yi 1 Introduction Historique: Rivest Shamir Adleman ou RSA est un algorithme asymétrique de cryptographie à clé
Plus en détailEfficient Object Versioning for Object- Oriented Languages From Model to Language Integration
Efficient Object Versioning for Object- Oriented Languages From Model to Language Integration Pluquet Frédéric July, 3rd 2012 Etude de techniques efficaces de versionnement d objets pour les langages orientés
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é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étailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
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étailLes outils actuels permettent-ils d automatiser la production de cartes? De quels outils dispose-t-on?
Le "Portrait de la Biodiversité Communale" est un document réalisé au niveau national pour chaque commune, regroupant les connaissances publiques disponibles et mobilisables à l'échelle nationale en matière
Plus en détailRECUPEREZ DES FICHIERS SUPPRIMES AVEC RECUVA
RECUPEREZ DES FICHIERS SUPPRIMES AVEC RECUVA INTRODUCTION Ce logiciel gratuit peut vous aider à récupérer des fichiers que vous auriez malencontreusement effacés en vidant la corbeille par exemple. Il
Plus en détailAlgorithmique et structures de données I
Algorithmique et structures de données I Riadh Ben Messaoud Université 7 novembre à Carthage Faculté des Sciences Économiques et de Gestion de Nabeul 1ère année Licence Fondamentale IAG 1ère année Licence
Plus en détailL ALGORITHMIQUE. Algorithme
L ALGORITHMIQUE Inspirée par l informatique, cette démarche permet de résoudre beaucoup de problèmes. Quelques algorithmes ont été vus en 3 ième et cette année, au cours de leçons, nous verrons quelques
Plus en détaildonnées en connaissance et en actions?
1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions? SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes)
Plus en détail1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7
Sommaire 1-Introduction 2 1-1- BPM (Business Process Management)..2 1-2 J-Boss JBPM 2 2-Installation de JBPM 3 2-1 Architecture de JOBSS JBPM 3 2-2 Installation du moteur JBoss JBPM et le serveur d application
Plus en détailOutils pour la pratique
Cinquième partie Outils pour la pratique 121 CHAPITRE 1 Les bases des séances de TP Avant de lire cettre section, il est suggéré de relire vos notes de cours se rapportant au système d exploitation Unix.
Plus en détailExercices Alternatifs. Une fonction continue mais dérivable nulle part
Eercices Alternatifs Une fonction continue mais dérivable nulle part c 22 Frédéric Le Rou (copleft LDL : Licence pour Documents Libres). Sources et figures: applications-continues-non-derivables/. Version
Plus en détailExercices Alternatifs. Une fonction continue mais dérivable nulle part
Eercices Alternatifs Une fonction continue mais dérivable nulle part c 22 Frédéric Le Rou (copyleft LDL : Licence pour Documents Libres). Sources et figures: applications-continues-non-derivables/. Version
Plus en détail