Algorithmique et Analyse d Algorithmes

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

Download "Algorithmique et Analyse d Algorithmes"

Transcription

1 Algorithmique et Analyse d Algorithmes L3 Info Cours 1 : notion de coût d un algorithme Benjamin Wack / 44

2 Objectifs du cours Savoir proposer une solution algorithmique à un problème posé, savoir implanter la solution et savoir analyser celle-ci. Objectifs détaillés Savoir reconnaître et mettre en œuvre des schémas génériques d algorithmes (séquence, arbre, graphe...), Savoir construire une solution selon une démarche allant du plus simple (algorithme naïf) au plus efficace (diviser pour régner, etc.) Savoir démontrer la correction des algorithmes Savoir comment évaluer la complexité d une solution algorithmique : - analyser la complexité au pire, en moyenne avec des hypothèses probabilistes, - analyser la complexité en utilisant des mesures sur des simulations ou des jeux de test. 2 / 44

3 Plan Présentation du cours Problématique Correction Coût d un algorithme Complexité Méthodologie Ordres de grandeur Algorithme de Horner 3 / 44

4 Présentation du cours Structure du cours Cours (Benjamin Wack) Une partie synthétique sur les concepts et schémas algorithmiques Un algorithme classique afin de se constituer une culture de référence TD1 (Florence Perronnin, Anne Rasse, Benjamin Wack) Exercices permettent de renforcer la compréhension des concepts. TD2 (Rémy Boutonnet, Guillaume Cordonnier, Vincent Danjean) Mise en œuvre des concepts et préparation aux activités pratiques APNEES (RB, GC, VD) : Activités Pratiques Non Encadrées Évaluées Validation des concepts par la pratique et évaluation de la compréhension + au moins autant de travail personnel! (exercices, petits programmes) Adresse Mail enseignant : Prénom.Nom@imag.fr 5 / 44

5 Présentation du cours Ressources Bibliographie Algorithmique, T. Cormen, R. Rivest & C. Leiserson, Dunod Algorithmes, R. Sedgewick, Pearson Education Page Web Planning, documents, annales Moodle de l UFR Sujets et rendus d Apnées 6 / 44

6 Présentation du cours Évaluations Note finale = 67 % Examen + 33 % CC Les contrôles continus 2 quicks (mi-octobre et mi-novembre) : 50 % du CC 4 comptes-rendus d APNEEs dont 2 notés : 50 % du CC Examen terminal 2h30 sans documents ni calculatrice Session 2 en juin... Challenge de programmation Semaine du 7 au 11 novembre En équipes 7 / 44

7 Présentation du cours Programme (indicatif) du cours Complexité des algorithmes 1. Coût d un algorithme (itérations, ordres de grandeur) Horner 2. Analyse en moyenne Quicksort Preuves d algorithmes 3. Invariant, correction, terminaison Drapeau hollandais 4. Logique de Hoare Dichotomie Types abstraits élémentaires et implantation 5. Structures séquentielles Algorithme de parenthésage 6. Structures arborescentes Partition Binaire de l Espace Arbres 7. Arbres binaires de recherche Arbres B 8. Arbres ordonnés, structure de tas Algorithmes gloutons 9. Arbres et codage Algorithme de Huffman Graphes et algorithmes 10. Algorithmique de graphes Tri topologique 11. Arbre couvrant, prétraitement Algorithme de Knuth-Morris-Pratt 8 / 44

8 Problématique Notion de problème données Effectuer une recherche dans un inventaire Résoudre une équation Trouver le plus court chemin sur un plan de ville Corriger des fautes d orthographe Multiplier des matrices... stock coefficients plan texte + dictionnaire coefficients Dans chacun de ces exemples on s intéresse en fait à une classe de problèmes similaires, dont chaque instance est définie par des données. Il faut également préciser le résultat attendu. (par exemple pour l inventaire : oui/non? quantité? localisation?) 10 / 44

9 Problématique Qu est-ce qu un algorithme? Procédure de résolution de n importe quelle instance d un problème suffisamment élémentaire pour être exécutée de façon automatique. Problème concret Problème formalisé Algorithme Programme Programmation Instance Données Solution Exécution Exemple : résolution d équation 11 / 44

10 Problématique Un algorithme traite donc des données pour produire un résultat ; mais avec quelles primitives et quelles ressources? 12 / 44

11 Problématique Nécessité d un modèle Alan M. Turing Machine «de papier» La machine est dotée : d un ruban infini ( mémoire) d une tête de lecture/écriture d un automate ( processeur) Un modèle donc tourné vers les opérations de lecture/écriture ( affectation, calculs) 13 / 44

12 Problématique Les questions résolues par Turing Qu est-ce qu un calcul effectué automatiquement? Peut-on tout calculer? Peut-on décider automatiquement si une formule logique est vraie? 10 ans avant les premiers ordinateurs! Cf. Modèles de calcul au semestre 6 14 / 44

13 Problématique Les questions traitées en Algo5 Est-ce que je peux construire un programme qui résout mon problème (sur une machine conforme à mon modèle)? Spécification du problème et construction d un algorithme Est-ce que l exécution de mon programme sur la machine donne bien le résultat souhaité? Vérification de propriétés qualitatives par test et preuve Est-ce que mon programme me fournit le résultat en un temps acceptable? Validation de propriétés quantitatives par mesure et analyse 15 / 44

14 Problématique Les questions traitées en Algo5 Problème concret spécification Problème formalisé Instance construction Données Correction preuve Algorithme test Programme Solution Programmation mesure Exécution analyse de complexité Efficacité Exemple : résolution d équation 15 / 44

15 Correction Les propriétés recherchées Terminaison L exécution de l algorithme produit-elle un résultat en temps fini quelles que soient les données fournies? Correction partielle Lorsque l algorithme s arrête, le résultat calculé est-il la solution cherchée quelles que soient les données fournies? 17 / 44

16 Correction Test ou preuve? Testing shows the presence, not the absence of bugs E. W. Dijkstra, 1969 Le test : valide une implantation plutôt qu un algorithme permet des vérifications rapides peut être utilisé en cours de développement fait apparaître les limites du modèle La preuve : fournit une garantie incontestable sur le fond de l algorithme mais n élimine pas (complètement) les erreurs de programmation nécessite des outils formels pour une utilisation à grande échelle 18 / 44

17 Coût d un algorithme Notre modèle de machine Une machine est constituée d un processeur, d une mémoire et d un ensemble d opérations. Mémoire - infinie (mais un calcul donné utilise un espace fini), - types élémentaires (finis) int, float,... - puis on ajoutera des structures de données Opérations - nombre fini d opérations (arithmétiques, booléennes...) ; - chaque opération a un nombre fini de paramètres (nombre fini de variables lues et écrites) Processeur - processeur unique ; - effectue les opérations en temps constant (1 top = 1 opération) 20 / 44

18 Coût d un algorithme Efficacité d un algorithme Est-ce que mon programme consomme une quantité acceptable de ressources pour fournir un résultat? Étant donnés deux programmes résolvant le même problème, lequel est le meilleur? Calcul Un calcul est une séquence d opérations qui, à partir d une configuration initiale de la mémoire, produit, en un temps fini, une configuration terminale. coût en temps à partir d une configuration initiale d = nombre d opérations dans la séquence coût en mémoire = nombre maximal de variables utilisées simultanément 21 / 44

19 Coût d un algorithme Exemple (1) Moyenne de 2 flottants MOY(a,b) Données : Deux flottants : a et b Résultat : La moyenne de a et de b s := a + b m := s/2 Return (m) Coût de l algorithme Coût temps? 2 opérations Coût en espace mémoire? 2 variables Coût constant, indépendant des données 22 / 44

20 Coût d un algorithme Exemple (2) Puissance : calcul de x n PUISSANCE(x,n) Données : Un flottant x et un entier n Résultat : La valeur de x n p := 1 k := 0 while k n p := p x k := k + 1 Return (p) Coût en temps : 2 + 2n opérations Coût variable, dépend de la valeur des données 23 / 44

21 Coût d un algorithme Exemple (3) Maximum d un tableau MAXIMUM(T,n) Données : T tableau de n entiers Résultat : L indice d un élément maxi max := T [1] for i := 1 to n if T [i] max i max := i max := T [i] Traiter (max) Return (i max ) Coût de l algorithme Modèle de coût? Supposons Traiter coûteux pour T=[1,2,...,n]? pour T=[14,28,...,14n]? pour T=[n,1,2,...,n-1]? Dépend de la taille des données Borné par une fonction linéaire Expression du coût : en fonction de quoi? Pour ce tableau n est la taille des données Pour un entier n est la valeur de la donnée : on préférera log 2 (n) 24 / 44

22 Complexité Généralisation Espace des données Algorithme Espace des résultats Machine Taille de la donnée Cout du calcul Entier Entier Caractériser l efficacité générale de l algorithme = trouver la relation entre la taille des données et le coût de l algorithme sur un (modèle de) machine donnée 26 / 44

23 Complexité Complexité d un algorithme Complexité (au pire) La complexité d un algorithme A est fonction de la taille des données : C A (n) = max(coût(d)) pour toutes les données d de taille n Suppose d avoir fixé la notion de taille Maximum = garantie quelles que soient les conditions d utilisation Exhiber un cas défavorable «suffit» Complexité au mieux CA min (n) = min(coût(d)) pour toutes les données d de taille n Correspond au cas le plus favorable Quel comportement privilégie-t-on? 27 / 44

24 Complexité Méthodologie Complexité des structures de base Instructions en séquence Le coût de Faire Truc Faire Machin est la somme des coûts de Truc et de Machin Composition des coûts La complexité d une boucle est donc la somme des coûts de chaque itération Instructions FOR, WHILE, REPEAT, / 44

25 Complexité Méthodologie Complexité des structures de base (2) Instructions conditionnelles if condition Faire Truc else Faire Machin Coût de l une des branches plus le coût d évaluation de la condition Majoration du coût La complexité au pire sera donc majorée par le maximum des complexités au pire de chaque branche. C(si Condition alors A sinon B) C(evaluation(Condition)) + max{c(a), C(B)} Instructions IF, SWITCH, / 44

26 Complexité Méthodologie Complexité des structures de base (3) Appel de procédure Le coût de l appel d une procédure est : le coût du corps de la procédure pour ses paramètres d appel plus le coût de l évaluation de ses paramètres. Méthode de calcul de complexité Le calcul de la complexité d un algorithme s obtient donc en composant les complexités des différentes opérations composant l algorithme. assemblage et reconstruction méthode par composition se fait à la conception de l algorithme 31 / 44

27 Complexité Méthodologie Exemple Calcul de la somme des entiers de 1 à n i := 1 somme := 0 Tantque (i n) : somme := somme + i i := i + 1 Coût d une itération = 2 (additions) + 1 test Nombre d itérations = n Coût de la boucle = 3n Coût de l algorithme = 3n + 1 Niveau de détail judicieux? 32 / 44

28 Complexité Ordres de grandeur Ordres de grandeur La complexité est une prédiction du temps d exécution du programme codant l algorithme. Mais dépend de l architecture de la machine, donc c est une abstraction (approximation) Passage à l échelle des algorithmes Ce qui est important c est : 1. l ordre de grandeur ; 2. de pouvoir comparer les algorithmes 34 / 44

29 Complexité Ordres de grandeur Exemples n = 10 6 n = 10 9 somme des éléments d un tableau de taille n n opérations tri par insertion des éléments d un tableau de taille n n 2 opérations énumération des vecteurs de bits de taille n 2 n opérations Définir des ordres de grandeur comparables 1/1000 e s1 s 1/4 h30 ans années... Pour se donner une représentation concrète : sur un PC récent, environ 1 milliard d opérations / seconde 35 / 44

30 Complexité Ordres de grandeur Borne supérieure asymptotique Notation O Pour une fonction donnée g on note O(g) l ensemble de fonctions : O(g) = {f telles que c 0, n 0 0, n n 0, f (n) c.g(n)} On écrit f = O(g) pour f O(g). On dit que g est une borne supérieure asymptotique pour f. Vite dit : g dépasse f à partir d un certain rang (taille de données) Pause courbes Exemples n = O(n 3 ) 1250n 3 = O(2 n ) n + n = O(n) n n + n log n = O(n n) 36 / 44

31 Complexité Ordres de grandeur Échelles de comparaison (à connaître) Échelle polynomiale Si k l alors n k = O(n l ) Échelle logarithmique log(n) = O(n) log(log(n)) = O(log(n)) Échelle exponentielle Si 0 < a < b alors a n = O(b n ) Pour tous a > 1 et k 0 on a n k = O(a n ) Deux propriétés utiles Si f = O(g) alors f + g = O(g) et k f = O(g) 37 / 44

32 Complexité Ordres de grandeur Autres encadrements f = O(g) si c 0, n 0 0, n n 0, f (n) c.g(n) Borne inférieure asymptotique (notation Ω) f = Ω(g) si c 0, n 0 0, n n 0, c.g(n) f (n) Borne asymptotique approchée : (notation Θ) f = Θ(g) si c 1, c 2 0, n 0 0, n n 0, c 1.g(n) f (n) c 2.g(n) 38 / 44

33 Algorithme de Horner Évaluation d un polynôme Un polynôme P à une seule variable X s écrit de façon unique Résultat : La valeur P(x 0 ) P = a n X n + a n 1 X n a 1 X + a 0 Données : Les coefficients a n,..., a 0 suffisent à donner le polynôme Rangés dans un tableau A de taille n + 1 Une valeur x 0 en laquelle on veut évaluer le polynôme Types de données : les coefficients a n,..., a 0 sont des flottants x 0 peut être un flottant mais aussi une matrice, un polynôme... Incidence sur le modèle de coût 40 / 44

34 Algorithme de Horner Algorithme (très) naïf Évaluation de P en x 0 EVAL(P,x 0 ) Données : Un tableau de coefficients A et un flottant x 0 Résultat : La valeur de P(x 0 ) r = 0 i = n while i 0 p = 1 k = 0 while k i p = p x 0 k = k + 1 r = r + A[i] p i = i 1 Return (r) (calcul de x n 0 dans p) Complexité en O(n 2 ) 41 / 44

35 Algorithme de Horner Évaluation droite-gauche Idée : ne pas recalculer les puissances de x 0 pour rien Évaluation de P en x 0 par la droite EVAL_DROITE(P,x 0 ) Données : Un tableau de coefficients A et un flottant x 0 Résultat : La valeur de P(x 0 ) r = 0 i = 0 p = 1 while i n r = r + A[i] p p = p x 0 i = i + 1 Return (r) Complexité en O(n) 42 / 44

36 Algorithme de Horner Évaluation gauche-droite efficace On se base sur la pseudo-factorisation P = ((... (a n X + a n 1 )...) X + a 1 ) X + a 0 Évaluation de P en x 0 par la méthode de Horner HORNER(P,x 0 ) Données : Un tableau de coefficients A et un flottant x 0 Résultat : La valeur de P(x 0 ) r = 0 i = n while i 0 r = r x 0 + A[i] i = i 1 Return (r) Même complexité mais : En place et meilleure constante Autres applications : dérivation, division, calcul de racines / 44

37 Algorithme de Horner Conclusion Un même problème peut être résolu par des algorithmes très différents On peut (parfois) passer de l un à l autre par raffinement L analyse de complexité est un critère fiable pour les comparer... mais pas le seul La prochaine fois schémas récursifs analyse du coût en moyenne tri rapide 44 / 44

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII

ALGORITHMIQUE 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étail

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation Complexité Objectifs des calculs de complexité : - pouvoir prévoir le temps d'exécution d'un algorithme - pouvoir comparer deux algorithmes réalisant le même traitement Exemples : - si on lance le calcul

Plus en détail

1 Recherche en table par balayage

1 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étail

Chapitre 7. Récurrences

Chapitre 7. Récurrences Chapitre 7 Récurrences 333 Plan 1. Introduction 2. Applications 3. Classification des récurrences 4. Résolution de récurrences 5. Résumé et comparaisons Lectures conseillées : I MCS, chapitre 20. I Rosen,

Plus en détail

Les arbres binaires de recherche

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

Plus en détail

Algorithmique 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. 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

1 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 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étail

Licence 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étail

Qualité du logiciel: Méthodes de test

Qualité du logiciel: Méthodes de test Qualité du logiciel: Méthodes de test Matthieu Amiguet 2004 2005 Analyse statique de code Analyse statique de code Étudier le programme source sans exécution Généralement réalisée avant les tests d exécution

Plus en détail

Quelques Algorithmes simples

Quelques 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étail

Calculabilité 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/ 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

Licence Sciences et Technologies Examen janvier 2010

Licence 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étail

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Grandes 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

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

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

Plus en détail

Algorithmes récursifs

Algorithmes 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étail

Machines virtuelles Cours 1 : Introduction

Machines virtuelles Cours 1 : Introduction Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 pierre.letouzey@inria.fr PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une

Plus en détail

4. Les structures de données statiques

4. Les structures de données statiques 4. Les structures de données statiques 4.1 Tableaux à une dimension 4.1.1 Introduction Imaginons que dans un programme, nous ayons besoin simultanément de 25 valeurs (par exemple, des notes pour calculer

Plus en détail

UE C avancé cours 1: introduction et révisions

UE C avancé cours 1: introduction et révisions Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple

Plus en détail

UEO11 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. 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étail

Initiation à l algorithmique

Initiation à 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étail

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan 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étail

Cours 1 : La compilation

Cours 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étail

1/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/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

Corrigé des TD 1 à 5

Corrigé 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étail

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Baccalauré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étail

Feuille TD n 1 Exercices d algorithmique éléments de correction

Feuille TD n 1 Exercices d algorithmique éléments de correction Master Sciences, Technologies, Santé Mention Mathématiques, spécialité Enseignement des mathématiques Algorithmique et graphes, thèmes du second degré Feuille TD n 1 Exercices d algorithmique éléments

Plus en détail

Comparaison de fonctions Développements limités. Chapitre 10

Comparaison de fonctions Développements limités. Chapitre 10 PCSI - 4/5 www.ericreynaud.fr Chapitre Points importants 3 Questions de cours 6 Eercices corrigés Plan du cours 4 Eercices types 7 Devoir maison 5 Eercices Chap Et s il ne fallait retenir que si points?

Plus en détail

1. 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. 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étail

Algorithmique et Programmation

Algorithmique et Programmation École Supérieure d Ingénieurs de Poitiers Gea Algorithmique et Programmation Laurent Signac ii Algorithmique et programmation Gea Table des matières Avant Propos v Structures de données Notion de pointeur..............................................

Plus en détail

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2) Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter

Plus en détail

Image d un intervalle par une fonction continue

Image 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é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 É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étail

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

Baccalauréat ES/L Amérique du Sud 21 novembre 2013 Baccalauréat ES/L Amérique du Sud 21 novembre 2013 A. P. M. E. P. EXERCICE 1 Commun à tous les candidats 5 points Une entreprise informatique produit et vend des clés USB. La vente de ces clés est réalisée

Plus en détail

Recherche dans un tableau

Recherche 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étail

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France. La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of

Plus en détail

Représentation d un entier en base b

Repré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étail

C f tracée ci- contre est la représentation graphique d une

C f tracée ci- contre est la représentation graphique d une TLES1 DEVOIR A LA MAISON N 7 La courbe C f tracée ci- contre est la représentation graphique d une fonction f définie et dérivable sur R. On note f ' la fonction dérivée de f. La tangente T à la courbe

Plus en détail

Probabilité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. 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étail

Algorithmique et Programmation Fonctionnelle

Algorithmique et Programmation Fonctionnelle Algorithmique et Programmation Fonctionnelle RICM3 Cours 9 : Lambda-calcul Benjamin Wack Polytech 2014-2015 1 / 35 La dernière fois Typage Polymorphisme Inférence de type 2 / 35 Plan Contexte λ-termes

Plus en détail

Programmation linéaire

Programmation 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étail

UE Programmation Impérative Licence 2ème Année 2014 2015

UE Programmation Impérative Licence 2ème Année 2014 2015 UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative

Plus en détail

Programmes des classes préparatoires aux Grandes Ecoles

Programmes des classes préparatoires aux Grandes Ecoles Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voies : Mathématiques, physique et sciences de l'ingénieur (MPSI) Physique, chimie et sciences de l ingénieur (PCSI) Physique,

Plus en détail

Parallélisme et Répartition

Parallélisme et Répartition Parallélisme et Répartition Master Info Françoise Baude Université de Nice Sophia-Antipolis UFR Sciences Département Informatique baude@unice.fr web du cours : deptinfo.unice.fr/~baude Septembre 2009 Chapitre

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Loris MARCHAL Laboratoire de l Informatique du Parallélisme Équipe Graal Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Thèse réalisée sous la direction

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Algorithmique et Programmation, IMA

Algorithmique 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étail

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Structure d un programme et Compilation Notions de classe et d objet Syntaxe Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types

Plus en détail

Table des matières. I Mise à niveau 11. Préface

Table des matières. I Mise à niveau 11. Préface Table des matières Préface v I Mise à niveau 11 1 Bases du calcul commercial 13 1.1 Alphabet grec...................................... 13 1.2 Symboles mathématiques............................... 14 1.3

Plus en détail

SUPPORT DE COURS. Dr. Omari Mohammed Maître de Conférences Classe A Université d Adrar Courriel : omarinmt@gmail.com

SUPPORT DE COURS. Dr. Omari Mohammed Maître de Conférences Classe A Université d Adrar Courriel : omarinmt@gmail.com Dr. Omari Mohammed Maître de Conférences Classe A Université d Adrar Courriel : omarinmt@gmail.com SUPPORT DE COURS Matière : Algorithmiques et Structures de Données 1 Niveau : 2 ème Année Licence en Informatique

Plus en détail

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La licence Mathématiques et Economie-MASS de l Université des Sciences Sociales de Toulouse propose sur les trois

Plus en détail

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 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étail

ASR1 TD7 : Un microprocesseur RISC 16 bits

ASR1 TD7 : Un microprocesseur RISC 16 bits {Â Ö Ñ º ØÖ Ý,È ØÖ ºÄÓ Ù,Æ ÓÐ ºÎ ÝÖ Ø¹ ÖÚ ÐÐÓÒ} Ò ¹ÐÝÓÒº Ö ØØÔ»»Ô Ö Óº Ò ¹ÐÝÓÒº Ö» Ö Ñ º ØÖ Ý»¼ Ö½» ASR1 TD7 : Un microprocesseur RISC 16 bits 13, 20 et 27 novembre 2006 Présentation générale On choisit

Plus en détail

Algorithmique, graphes et programmation dynamique Notes de Cours Rapport de Travaux Pratiques. Laurent Canet

Algorithmique, graphes et programmation dynamique Notes de Cours Rapport de Travaux Pratiques. Laurent Canet Algorithmique, graphes et programmation dynamique Notes de Cours Rapport de Travaux Pratiques Laurent Canet Le 2 juillet 2003 Table des matières I IN202 - Algorithmique 6 1 Système formel de preuve de

Plus en détail

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

IN 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étail

Représentation des Nombres

Repré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étail

Programmation C. Apprendre à développer des programmes simples dans le langage C

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Logiciel 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étail

Cours de Master Recherche

Cours de Master Recherche Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire 2008-2009. Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera.

Cours Optimisation Partie Optimisation Combinatoire. Année scolaire 2008-2009. Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera. Cours Optimisation Partie Optimisation Combinatoire 3ième année ISAE Année scolaire 2008-2009 Gérard Verfaillie ONERA/DCSD/CD, Toulouse Gerard.Verfaillie@onera.fr Septembre 2008 Résumé Ce document couvre

Plus en détail

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme Chapitre 3 Quelques fonctions usuelles 1 Fonctions logarithme et eponentielle 1.1 La fonction logarithme Définition 1.1 La fonction 7! 1/ est continue sur ]0, +1[. Elle admet donc des primitives sur cet

Plus en détail

Algorithmique - Cours et Travaux Dirigés Ecole Normale Supérieure de Lyon

Algorithmique - Cours et Travaux Dirigés Ecole Normale Supérieure de Lyon Algorithmique - Cours et Travaux Dirigés Ecole Normale Supérieure de Lyon Rédaction Etudiants-scribes, MIM 2003 et 2004 Cours Yves Robert Travaux Dirigés Yves Caniou et Eric Thierry 2003-2004-2005 2 Table

Plus en détail

Cours 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 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étail

MABioVis. Bio-informatique et la

MABioVis. Bio-informatique et la MABioVis Modèles et Algorithmes pour la Bio-informatique et la Visualisation Visite ENS Cachan 5 janvier 2011 MABioVis G GUY MELANÇON (PR UFR Maths Info / EPI GRAVITE) (là, maintenant) - MABioVis DAVID

Plus en détail

Correction de l examen de la première session

Correction 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étail

Quatrième partie IV. Test. Test 15 février 2008 1 / 71

Quatrième partie IV. Test. Test 15 février 2008 1 / 71 Quatrième partie IV Test Test 15 février 2008 1 / 71 Outline Introduction 1 Introduction 2 Analyse statique 3 Test dynamique Test fonctionnel et structurel Test structurel Test fonctionnel 4 Conclusion

Plus en détail

Introduction à MATLAB R

Introduction à 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étail

Les structures de données. Rajae El Ouazzani

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

Plus en détail

Programmation C++ (débutant)/instructions for, while et do...while

Programmation 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étail

Cours 1 : Qu est-ce que la programmation?

Cours 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étail

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

Calculer avec Sage. Revision : 417 du 1 er juillet 2010 Calculer avec Sage Alexandre Casamayou Guillaume Connan Thierry Dumont Laurent Fousse François Maltey Matthias Meulien Marc Mezzarobba Clément Pernet Nicolas Thiéry Paul Zimmermann Revision : 417 du 1

Plus en détail

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

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

Plus en détail

introduction Chapitre 5 Récursivité Exemples mathématiques Fonction factorielle ø est un arbre (vide) Images récursives

introduction 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étail

MIS 102 Initiation à l Informatique

MIS 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étail

Architecture des Systèmes d Information Architecture des Systèmes d Information

Architecture 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

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation. Université du Québec à Chicoutimi Département d informatique et de mathématique Plan de cours Titre : Élément de programmation Sigle : 8inf 119 Session : Automne 2001 Professeur : Patrice Guérin Local

Plus en détail

Programmer 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) 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étail

Introduction au langage C

Introduction au langage C Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les

Plus en détail

Bases de programmation. Cours 5. Structurer les données

Bases de programmation. Cours 5. Structurer les données Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et

Plus en détail

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015 Énoncé Soit V un espace vectoriel réel. L espace vectoriel des endomorphismes de V est désigné par L(V ). Lorsque f L(V ) et k N, on désigne par f 0 = Id V, f k = f k f la composée de f avec lui même k

Plus en détail

Théorie et Codage de l Information (IF01) exercices 2013-2014. Paul Honeine Université de technologie de Troyes France

Théorie et Codage de l Information (IF01) exercices 2013-2014. Paul Honeine Université de technologie de Troyes France Théorie et Codage de l Information (IF01) exercices 2013-2014 Paul Honeine Université de technologie de Troyes France TD-1 Rappels de calculs de probabilités Exercice 1. On dispose d un jeu de 52 cartes

Plus en détail

Continuité et dérivabilité d une fonction

Continuité et dérivabilité d une fonction DERNIÈRE IMPRESSIN LE 7 novembre 014 à 10:3 Continuité et dérivabilité d une fonction Table des matières 1 Continuité d une fonction 1.1 Limite finie en un point.......................... 1. Continuité

Plus en détail

V- Manipulations de nombres en binaire

V- 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étail

I. Polynômes de Tchebychev

I. Polynômes de Tchebychev Première épreuve CCP filière MP I. Polynômes de Tchebychev ( ) 1.a) Tout réel θ vérifie cos(nθ) = Re ((cos θ + i sin θ) n ) = Re Cn k (cos θ) n k i k (sin θ) k Or i k est réel quand k est pair et imaginaire

Plus en détail

Définitions. Numéro à préciser. (Durée : )

Dé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étail

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011 Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr Université de Provence 9 février 2011 Arnaud Labourel (Université de Provence) Exclusion Mutuelle 9 février 2011 1 / 53 Contexte Epistémologique

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

Résolution de systèmes linéaires par des méthodes directes Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.

Plus en détail

as Architecture des Systèmes d Information

as Architecture des Systèmes d Information Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes

Plus en détail

Découverte de Python

Dé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étail

Algorithmique, Structures de données et langage C

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

Plus en détail

Initiation. àl algorithmique et à la programmation. en C

Initiation. à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étail

Quelques tests de primalité

Quelques tests de primalité Quelques tests de primalité J.-M. Couveignes (merci à T. Ezome et R. Lercier) Institut de Mathématiques de Bordeaux & INRIA Bordeaux Sud-Ouest Jean-Marc.Couveignes@u-bordeaux.fr École de printemps C2 Mars

Plus en détail

Commun à tous les candidats

Commun à tous les candidats EXERCICE 3 (9 points ) Commun à tous les candidats On s intéresse à des courbes servant de modèle à la distribution de la masse salariale d une entreprise. Les fonctions f associées définies sur l intervalle

Plus en détail

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

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

Plus en détail

Algorithmes de recherche

Algorithmes de recherche Algorithmes de recherche 1 Résolution de problèmes par recherche On représente un problème par un espace d'états (arbre/graphe). Chaque état est une conguration possible du problème. Résoudre le problème

Plus en détail

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

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

Plus en détail

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires

Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Nouvelles propositions pour la résolution exacte du sac à dos multi-objectif unidimensionnel en variables binaires Julien Jorge julien.jorge@univ-nantes.fr Laboratoire d Informatique de Nantes Atlantique,

Plus en détail

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail