Corrigé du TP n o /2014. Lycée Louis-Le-Grand, Paris MPSI 4 Informatique pour tous A. Troesch, J.-P. Becirspahic
|
|
- Delphine Bellefleur
- il y a 8 ans
- Total affichages :
Transcription
1 Lycée Louis-Le-Grand, Paris MPSI 4 Informatique pour tous A. Troesch, J.-P. Becirspahic 2013/2014 Corrigé du TP n o 5 Exercice 1. recherche d un élément dans un tableau non trié 1. Le principe de la recherche d un élément dans un tableau non trié est simple : un parcours séquentiel jusqu à trouver cet élément ou aboutir à la fin de la liste. def est_present(a, lst): Notons toutefois que cette fonction n est guère utile en pratique car si x est un objet python et seq une séquence (c est à dire un objet de type list, tuple, range, str et quelques autres), l expression «x in seq» répond à la question posée. Par exemple : >>> 3 in [1, 2, 3, 4, 5] True >>> 5 in range(2, 10, 2) False >>> 'y' in 'asymptote' True 2. Si on souhaite retourner l indice minimum de la liste correspondant à l élément recherché, se pose la question de savoir quoi faire en cas d absence de cet élément. Une solution simple consiste à afficher à l écran un message signalant le problème ou à retourner la valeur None : def indice(a, lst): print("l'élément recherché n'est pas dans la liste") mais il existe une solution plus élégante consistant à déclencher une exception. Une exception se déclenche et interrompt le script en cours dès lors qu un évènement inattendu se produit : erreur arithmétique, variable non définie, erreur de typage, etc. Par exemple : >>> / 0 ZeroDivisionError: division by zero >>> 1 + a NameError: name 'a' is not defined >>> 2 + '3' TypeError: unsupported operand type(s) for +: 'int' and 'str' Il est possible de déclencher une exception à l aide de l instruction raise ; c est ce que nous allons faire dans le cas où x ne se trouve pas dans lst : def indice(a, lst): raise ValueError('élément non trouvé') Par Exemple : >>> indice(5, [1,2,3,4,6,7,8,9]) ValueError: élément non trouvé L intérêt de cette démarche est qu il est possible de rattraper une exception à l aide de la syntaxe try... except. Illustrons ceci en revenant un instant sur la première question de cet exercice, et utilisons cette fois une boucle conditionnelle pour parcourir les éléments de la liste : page 1
2 def est_present(a, lst): while lst[k]!= a: Cette version n est pas satisfaisante : elle renvoie bien True lorsque a est dans la liste, mais déclenche l exception IndexError dans le cas contraire (dès lors que k >= len(lst)). Nous allons la corriger en rattrapant cette exception pour renvoyer False à la place : def est_present(a, lst): try: while lst[k]!= a: except IndexError: Notez enfin qu il est possible de créer ses propres exceptions si celles qui sont prédéfinies ne suffisent pas (consulter l aide en ligne pour plus d information sur les exceptions). L exercice 2 nous donnera une autre occasion d illustrer l intérêt de ce mécanisme de rattrapage d une exception. 3. Calculer le nombre d occurrences d un élément dans une liste ne présente aucune difficulté : def occurrences(a, lst): 4. Nous allons maintenant simuler la recherche d un élément de l intervalle 0, N 1 dans une liste de éléments du même intervalle, en réalisant 1000 fois l expérience. Pour ce faire, nous allons modifier la fonction de la première question de manière à dénombrer le nombre d éléments testés : def est_present(a, lst): Nous allons utiliser la fonction randint du module numpy.random qui permet de créer un tableau pseudo-aléatoire d une taille donnée : from numpy.random import randint La fonction permettant de réaliser l expérience se définit alors de la façon suivante : def moyenne(n): for k in range(1000): s += est_present(randint(n), randint(n, size = 10000)) print("moyenne des comparaisons effectuées :", s/1000) Quelques essais avec différentes valeurs de N : >>> moyenne(10) moyenne des comparaisons effectuées : >>> moyenne(20) moyenne des comparaisons effectuées : >>> moyenne(50) moyenne des comparaisons effectuées : >>> moyenne(100) moyenne des comparaisons effectuées : On constate un coût en moyenne proche de N, ce qui n est pas étonnant. En effet, la probabilité que l élément recherché soit trouvé au bout de k comparaisons est égal à 1 N ( 1 1 N ) k 1 et la probabilité qu il ne se trouve pas page 2
3 ( dans la liste égal à 1 1 ) n donc le coût en moyenne est egal à : N n k=1 ( k 1 1 ) k 1 ( + n 1 1 ) n ( = N 1 ( 1 1 ) n ). N N N N Lorsque n est grand devant N, ( 1 1 N ) n est petit devant 1, et le coût en moyenne proche de N. En revanche, lorsque n et N sont voisins, ( 1 1 N ) n est proche 1 de 1 e donc la complexité en moyenne voisine de N ( 1 1 e ), ce que l on peut constater expérimentalement : >>> moyenne(10000) moyenne des comparaisons effectuées : >>> from math import exp >>> 10000*(1-1/exp(1)) Rappelons que l écart-type d un ensemble de valeurs (x 1,...,x n ) se calcule à l aide de la formule : σ = où x désigne la moyenne des valeurs. On calcule moyenne et écart-type en parallèle : from math import sqrt def ecarttype(n): s = s for k in range(1000): x = est_present(randint(n), randint(n, size = 10000)) s += x ss += x*x print("écart-type des comparaisons effectuées :", sqrt(ss/1000-(s/1000)**2)) L expérience montre que lorsque n est grand devant N l écart-type est proche de N : >>> ecarttype(10) écart-type des comparaisons effectuées : >>> ecarttype(20) écart-type des comparaisons effectuées : >>> ecarttype(50) écart-type des comparaisons effectuées : n n xi 2 x2 Exercice 2. recherche dans un tableau trié 1. Pour chercher x dans la liste triée par ordre croissant [a 0,...,a n 1 ], nous allons appliquer le principe dichotomique : comparer x et a p avec p = n. 2 si x < a p alors x, s il se trouve dans la liste, ne peut qu être dans la liste [a 0,...,a p 1 ] ; si x = a p, la recherche est terminée ; si x > a p alors x, s il se trouve dans la liste, ne peut qu être dans la liste [a p+1,...,a n 1 ]. Pour mettre ce principe en pratique, nous allons le généraliser à la recherche de l élément x dans la liste extraite [a i,...,a j 1 ] : si i j la liste en question est vide et x ne s y trouve pas ; si i < j l élément médian a pour indice k = i + j et la comparaison entre x et ak ramène la recherche à l un des deux tableaux [a 2 i,...,a k 1 ] ou [a k+1,...,a j 1 ]. i=1 a k a k a k 1. car ( n def recherche_dicho(a, lst): return None ) n ( ( 1 )) 1 = exp nln 1 = exp( 1 + o(1)) = n e + o(1). i k j 1 page 3
4 2. Pour pouvoir évaluer expérimentalement le coût de cette fonction, nous allons la modifier en ajoutant un compteur dénombrant le nombre de comparaisons à l élément médian effectués : def recherche_dicho(a, lst): Réalisons alors 1000 expériences à partir d un tableau de longueur n contenant des entiers pris au hasard dans 0,2n : def experience(n): for k in range(1000): s += recherche_dicho(randint(2*n+1), sorted(randint(2*n+1, size = n))) print("moyenne des comparaisons effectuées : ", s/1000) L expérience montre que le nombre de comparaisons est en moyenne de l ordre de log 2 (n) : >>> from math import log >>> experience(10) moyenne des comparaisons effectuées : >>> log(10, 2) >>> experience(100) moyenne des comparaisons effectuées : >>> log(100, 2) >>> experience(1000) moyenne des comparaisons effectuées : >>> log(1000, 2) Si on cherche la première occurrence de a dans le tableau, il faut poursuivre la recherche dans la partie gauche même si on a trouvé a. C est l occasion d utiliser le mécanisme de rattrapage d une exception évoquée dans l exercice précédent, plus particulièrement de l exception NameError qui se déclenche lorsqu on fait appel à un nom de variable non défini : def premiereoccurrence(a, lst): sol = k try: ol except NameError: return None À l issue de la recherche dichotomique, deux situations peuvent se rencontrer : si a est présent dans le tableau, la variable sol contient l indice de la première occurrence et c est ce résultat qui est retourné par la fonction ; si a n est pas présent dans le tableau, la variable sol n a pas été définie et la tentative de retourner son contenu déclenche l exception NameError qui est rattrapée pour renvoyer la valeur None à la place. La recherche de la dernière occurrence se traite de la même façon : page 4
5 def derniereoccurrence(a, lst): sol = k try: ol except NameError: return None Exercice 3. recherche d un mot dans un texte par la méthode naïve 1. La méthode de recherche naïve d un mot dans un texte consiste à comparer tous les facteurs du texte avec le mot recherché : def recherche(mot, texte): for k in range(len(texte)-len(mot)+1): if texte[k:k+len(mot)] == mot: raise ValueError Si on ne s autorise que des comparaisons entre caractères individuels, il est préférable de commencer par écrire une fonction déterminant si un mot est suffixe d un autre : def suffixe(mot, texte): for k in range(len(mot)): if mot[k]!= texte[k]: (cette fonction suppose que la longueur de mot est inférieure ou égale à celle de texte) avant d écrire la fonction principale : def recherche(mot, texte): for k in range(len(texte)-len(mot)+1): if suffixe(mot, texte[k]): raise ValueError 2. Pour tester cette fonction, commençons par définir une fonction retournant une chaîne de caractère de longueur 1000 arbitraire : def alea(n=1000): chn = 'abcdefghijklmnopqrstuvwxyz' return ''.join([chn[randint(26)] for k in range(n)]) (la méthode S.join renvoie une chaîne de caractères obtenue par concaténation des chaînes passées en paramètres, séparés par les caractères de S ; c est une façon de convertir une liste en un élément de type str). 3. Pour estimer la probabilité qu une chaîne de ce type contienne le mot llg, nous allons modifier la fonction de la première question pour renvoyer un booléen : def recherche(mot, texte): for k in range(len(texte)-len(mot)+1): if texte[k:k+len(mot)] == mot: Réalisons maintenant fois l expérience consistant à rechercher ce mot dans un texte tiré au hasard : for k in range(10000): if recherche('llg', alea(1000)): print("fréquence d'apparition du mot 'llg' :", s / 10000) Le script ci-dessus donne une probabilité de l ordre de 5,5% page 5
6 Exercice 4. paradoxe de Walter Penney 1. Nous allons arbitrairement représenter Pile par l entier 0 et Face par l entier 1. Nous pouvons dès lors évaluer le temps d attente de la première apparition de la séquence PPF de la façon suivante : def ppf(): lst = list(randint(2, size = 3)) s = 3 while lst!= [0, 0, 1]: lst.append(randint(2)) del lst[0] Réalisons maintenant expériences pour évaluer le nombre moyen de tirages nécessaires : for k in range(100000): s += ppf() print('nombre moyen de tirages nécessaires :', s/100000) Le script ci dessus donne un nombre de tirages moyens proche de La même expérience réalisée avec cette fois la séquence FPP donne là encore un nombre de tirages moyens proche de Nous allons maintenant définir une fonction déterminant laquelle des deux séquences apparaît la première : def penney(): lst = list(randint(2, size = 3)) while True: if lst == [0, 0, 1]: return 1 if lst == [1, 0, 0]: return 0 lst.append(randint(2)) del lst[0] 4. Il nous reste à estimer la probabilité que le motif PPF apparaisse en premier en réalisant expériences : for k in range(100000): s += penney() print('probabilité que PPF apparaisse avant FPP :', s / ) Le script ci-dessus conduit à une estimation de l ordre de 25% ; le motif FPP a donc trois fois plus de chances d apparaître en premier. Cet apparent paradoxe s explique aisément en considérant les deux premiers tirages, qui conduisent à l une des quatre configurations équiprobables suivantes : FF, FP, PF et PP. Or les trois premières configurations conduisent nécessairement à l apparition de FPP en premier 2, et seule la troisième fait apparaitre en premier PPF. En réalité, tout est joué après le deuxième tirage! 2. en effet dès lors qu un F est apparu, lorsqu un motif PPF apparaît il est nécessairement précédé d un motif de la forme FPPP PPPF page 6
Pré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é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é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é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é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étailProbabilités. I Petits rappels sur le vocabulaire des ensembles 2 I.1 Définitions... 2 I.2 Propriétés... 2
Probabilités Table des matières I Petits rappels sur le vocabulaire des ensembles 2 I.1 s................................................... 2 I.2 Propriétés...................................................
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étailNOTIONS DE PROBABILITÉS
NOTIONS DE PROBABILITÉS Sommaire 1. Expérience aléatoire... 1 2. Espace échantillonnal... 2 3. Événement... 2 4. Calcul des probabilités... 3 4.1. Ensemble fondamental... 3 4.2. Calcul de la probabilité...
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é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é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étailSHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5
SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N
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é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étailCorrigé des exercices sur les références
Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile
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é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é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é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é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é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étailProbabilités sur un univers fini
[http://mp.cpgedupuydelome.fr] édité le 10 août 2015 Enoncés 1 Proailités sur un univers fini Evènements et langage ensemliste A quelle condition sur (a,, c, d) ]0, 1[ 4 existe-t-il une proailité P sur
Plus en détailNOTE SUR LA MODELISATION DU RISQUE D INFLATION
NOTE SUR LA MODELISATION DU RISQUE D INFLATION 1/ RESUME DE L ANALYSE Cette étude a pour objectif de modéliser l écart entre deux indices d inflation afin d appréhender le risque à très long terme qui
Plus en détailProbabilités Loi binomiale Exercices corrigés
Probabilités Loi binomiale Exercices corrigés Sont abordés dans cette fiche : (cliquez sur l exercice pour un accès direct) Exercice 1 : épreuve de Bernoulli Exercice 2 : loi de Bernoulli de paramètre
Plus en détailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
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é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étailINF 321 : mémento de la syntaxe de Java
INF 321 : mémento de la syntaxe de Java Table des matières 1 La structure générale d un programme 3 2 Les composants élémentaires de Java 3 2.1 Les identificateurs.................................. 3 2.2
Plus en détailhttp://cermics.enpc.fr/scilab
scilab à l École des Ponts ParisTech http://cermics.enpc.fr/scilab Introduction à Scilab Graphiques, fonctions Scilab, programmation, saisie de données Jean-Philippe Chancelier & Michel De Lara cermics,
Plus en détailProgrammation Web. Madalina Croitoru IUT Montpellier
Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance
Plus en détailSimulation de variables aléatoires
Chapter 1 Simulation de variables aléatoires Références: [F] Fishman, A first course in Monte Carlo, chap 3. [B] Bouleau, Probabilités de l ingénieur, chap 4. [R] Rubinstein, Simulation and Monte Carlo
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étailLES DECIMALES DE π BERNARD EGGER
LES DECIMALES DE π BERNARD EGGER La génération de suites de nombres pseudo aléatoires est un enjeu essentiel pour la simulation. Si comme le dit B Ycard dans le cours écrit pour le logiciel SEL, «Paradoxalement,
Plus en détailModule Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS
Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)
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é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é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é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é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étailAtelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques
Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques CTIA04 Page 1 1. Les types de données sous S7 300 Il existe plusieurs types de données utilisées pour la programmation
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
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é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é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é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é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é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é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 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é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é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étailBaccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé
Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé A. P. M. E. P. Exercice 1 5 points 1. Réponse d. : 1 e Le coefficient directeur de la tangente est négatif et n est manifestement pas 2e
Plus en détailDéfinition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS = 7 10 1 + 5 10 2 + 2 10 3
8 Systèmes de numération INTRODUCTION SYSTÈMES DE NUMÉRATION POSITIONNELS Dans un système positionnel, le nombre de symboles est fixe On représente par un symbole chaque chiffre inférieur à la base, incluant
Plus en détailCours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan
Cours de C++ François Laroussinie Dept. d Informatique, ENS de Cachan 2 novembre 2005 Première partie I Introduction Introduction Introduction Algorithme et programmation Algorithme: méthode pour résoudre
Plus en détailPHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)
PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et
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étailEditer un script de configuration automatique du proxy
Editer un script de configuration automatique du proxy INTRODUCTION... 2 AVANTAGE D UN SCRIPT DE CONFIGURATION... 2 SYNTAXE DU SCRIPT DE CONFIGURATION AUTOMATIQUE... 2 MISE A DISPOSITION DU SCRIPT... 4
Plus en détailSurveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG)
Surveillance et maintenance prédictive : évaluation de la latence de fautes Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG) SURVEILLANCE Analyser une situation et fournir des indicateurs! Détection de symptômes!
Plus en détailSujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.
Promotion X 004 COURS D ANALYSE DES STRUCTURES MÉCANIQUES PAR LA MÉTHODE DES ELEMENTS FINIS (MEC 568) contrôle non classant (7 mars 007, heures) Documents autorisés : polycopié ; documents et notes de
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étailAlgorithme des fourmis appliqué à la détection et au suivi de contours dans une image
IN52-IN54 A2008 Algorithme des fourmis appliqué à la détection et au suivi de contours dans une image Etudiants : Nicolas MONNERET Alexandre HAFFNER Sébastien DE MELO Responsable : Franck GECHTER Sommaire
Plus en détailSolutions du chapitre 4
Solutions du chapitre 4 Structures de contrôle: première partie 4.9 Identifiez et corrigez les erreurs (il peut y en avoir plus d une par segment de code) de chacune des proposition suivantes: a) if (
Plus en détailDU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION
145 NOTION DE PROGRAMMATION 1/ Complétons notre microprocesseur Nous avons, dans les leçons précédentes décrit un microprocesseur théorique, cependant il s inspire du 6800, premier microprocesseur conçu
Plus en détailEncryptions, compression et partitionnement des données
Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des
Plus en détailPOKER ET PROBABILITÉ
POKER ET PROBABILITÉ Le poker est un jeu de cartes où la chance intervient mais derrière la chance il y a aussi des mathématiques et plus précisément des probabilités, voici une copie d'écran d'une main
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailPaginer les données côté serveur, mettre en cache côté client
Paginer les données côté serveur, mettre en cache côté client Vous voulez sélectionner des lignes dans une table, mais celle-ci comporte trop de lignes pour qu il soit réaliste de les ramener en une seule
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étail4. Groupement d objets
Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux
Plus en détailReprésentation des Nombres
Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...
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é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é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é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étailLe langage SQL Rappels
Le langage SQL Rappels Description du thème : Présentation des principales notions nécessaires pour réaliser des requêtes SQL Mots-clés : Niveau : Bases de données relationnelles, Open Office, champs,
Plus en détailTp 1 correction. Structures de données (IF2)
Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que
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étailImpact des robots d indexation sur le cache de second niveau de SPIP IMBERTI Christophe - SG/SPSSI/CP2I/DO Ouest 06/06/2012 mis à jour le 05/07/2012
Impact des robots d indexation sur le cache de second niveau de SPIP IMBERTI Christophe - SG/SPSSI/CP2I/DO Ouest 06/06/2012 mis à jour le 05/07/2012 SOMMAIRE 1. LE CONSTAT... 2 2. L EXPLICATION... 2 3.
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é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étail2. Comprendre les définitions de classes
Conception objet en Java avec BlueJ une approche interactive 2. Comprendre les définitions de classes Analyser le contenu des classes David J. Barnes, Michael Kölling version française: Patrice Moreaux
Plus en détailProbabilités et Statistiques. Feuille 2 : variables aléatoires discrètes
IUT HSE Probabilités et Statistiques Feuille : variables aléatoires discrètes 1 Exercices Dénombrements Exercice 1. On souhaite ranger sur une étagère 4 livres de mathématiques (distincts), 6 livres de
Plus en détailImage d un intervalle par une fonction continue
DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction
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étailBac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)
Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures) Eercice 1 (5 points) pour les candidats n ayant pas choisi la spécialité MATH Le tableau suivant donne l évolution du chiffre
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é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é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é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étailProgrammation Python pour Arcgis
Programmation Python pour Arcgis Un exemple d amélioration de l outil «champs de vision» (viewshed) ERIC BAILLY, UNIVERSITÉ DE NICE ERIC.BAILLY@UNICE.FR Une étude de visibilité peut être réalisée par le
Plus en détailProbabilités sur un univers fini
[http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur
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étailChapitre 1. L intérêt. 2. Concept d intérêt. 1. Mise en situation. Au terme de ce chapitre, vous serez en mesure de :
Chapitre 1 L intérêt Au terme de ce chapitre, vous serez en mesure de : 1. Comprendre la notion générale d intérêt. 2. Distinguer la capitalisation à intérêt simple et à intérêt composé. 3. Calculer la
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é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étailAnalyse de sécurité de logiciels système par typage statique
Contexte Modélisation Expérimentation Conclusion Analyse de sécurité de logiciels système par typage statique Application au noyau Linux Étienne Millon UPMC/LIP6 Airbus Group Innovations Sous la direction
Plus en détailArchitecture des Systèmes d Information Architecture des Systèmes d Information
Plan... Tableaux et tris I3 - Algorithmique et programmation 1 Rappels Nicol Delestre 2 Tableaux à n dimensions 3 Initiation aux tris Tableaux - v2.0.1 1 / 27 Tableaux - v2.0.1 2 / 27 Rappels : tableau
Plus en détail