Algorithmes récursifs
|
|
|
- Andrée St-Laurent
- il y a 10 ans
- Total affichages :
Transcription
1 Licence 1 MASS - Algorithmique et Calcul Formel S. Verel, M.-E. Voge verel 23 mars 2007
2 Objectifs de la séance 3 écrire des algorithmes récursifs avec un seul test rechercher un élément dans un tableau par dichotomie récursivement Questions principales du jour : Comment écrire ce que l on ne connait pas encore? S. Verel, M.-E. Voge
3 Plan Principe de la récursivité 1 Principe de la récursivité Decendre ou monter un escalier Couper un gâteau 2 Définition Algorithmes classiques 3 S. Verel, M.-E. Voge
4 Les puissances de a Decendre ou monter un escalier Couper un gâteau Objectif : Calculer a n en "travaillant" le moins possible on sait que a n = a a n 1... Itératif : chouette! on connaît a 0!!! Récusif : si seulement on connaissait a n 1... S. Verel, M.-E. Voge
5 L escalier & la puissance a n = a a n 1 Decendre ou monter un escalier Couper un gâteau arrivee depart arrivee depart n n 1 0 a^0 = 1 ITERATIF 1 0 a^0 = 1 RECURSIF départ : info connue monter vers résultat arêt en haut : n boucle pour départ : info cherchée descendre vers connue arêt en bas : 0 monter vers résultat comment??? S. Verel, M.-E. Voge
6 Construction de l algorithme récursif Decendre ou monter un escalier Couper un gâteau on sait : 1 monter/descendre d une marche : a n = a a n 1 2 a 0 = 1 mais : plusieurs marches... comment faire le reste du travail? Solution : appel récursif l agorithme fait une partie du travail (descendre/monter une marche) demande à un algorithme de faire le reste : lui même S. Verel, M.-E. Voge
7 Exemple d exécution Calcul de la puissance Decendre ou monter un escalier Couper un gâteau Algorithme puissance(a : réel, n : entier): : réel début si n = 0 alors retourner 1 retourner puissance(a, n-1) * a fin S. Verel, M.-E. Voge
8 Exemple d exécution Calcul de la puissance Decendre ou monter un escalier Couper un gâteau Calcul de (1.5) 3 : a = 1.5 et n = puissance(1.5, 3) 2. > puissance(1.5, 2) 3. -> puissance(1.5, 1) 4. -> puissance(1.5, 0) = > puissance(1.5, 1) = 1 * 1.5 = > puissance(1.5, 2) = 1.5 * 1.5 = puissance(1.5, 3) = 2.25 * 1.5 = S. Verel, M.-E. Voge
9 Autre problème : le PGCD Decendre ou monter un escalier Couper un gâteau monter/descendre : PGCD(a, b) = PGCD(b, a modulo b) PGCD(a, 0) = a S. Verel, M.-E. Voge
10 Exemple du calcul du pgcd Decendre ou monter un escalier Couper un gâteau Algorithme PGCD(a, b : entier): : entier début 1: si b = 0 alors 2: retourner a 3: 4: c a modulo b 5: retourner PGCD(b, c) 6: fin S. Verel, M.-E. Voge
11 Exécution de l algorithme Decendre ou monter un escalier Couper un gâteau Pour a = 72 et b = PGCD(72, 34) 2. b 0 5. c = 4 6. PGCD(34, 4) 2. b 0 5. c = 2 6. PGCD(4, 2) 2. b 0 5. c = 0 6. PGCD(2, 0) 2. b = 0 3. PGCD = 2 S. Verel, M.-E. Voge
12 Une autre vision de la récursivité Decendre ou monter un escalier Couper un gâteau Problème : manger un gâteau énorme gâteau, seulement une bouchée à la fois, on sait couper en deux tout morceau de gâteau, on le coupe en petits morceaux et on les mange! Exemple : recherche dichotomique dans un tableau trié tableau T de n cases, vérifier seulement une case à la fois, on sait réduire la taille de T (jouer sur les indices), on le coupe en petits tableaux et on cherche dans chacun! S. Verel, M.-E. Voge
13 Recherche dichotomique Recherche dans un tableau de nombres entiers ordonnés Decendre ou monter un escalier Couper un gâteau Algorithme recherche(n :entier, t :tableau d entiers, a, b : entier): : booléen variable c : entier début si a > b alors retourner Faux // il ne reste plus de cases à vérifier c (a + b)/2 // on coupe si t[c] = n alors retourner Vrai // on est tombé juste sur la bonne case si t[c] < n alors retourner recherche(n, t, c+1, b) // on cherche dans une partie retourner recherche(n, t, a, c-1) // on cherche dans l autre fin S. Verel, M.-E. Voge
14 Exécution de l algorithme Decendre ou monter un escalier Couper un gâteau t : recherche(6, t, 0, 6) c = 3 1. t[3] > 6 2. > recherche(6, t, 0, 2) c = 1 2. t[1] < > recherche(6, t, 2, 2) c = 2 3. t[2] = > recherche(6, t, 2, 2) = Vrai 4. > recherche(6, t, 0, 2) = Vrai 5. recherche(6, t, 0, 6) = Vrai S. Verel, M.-E. Voge
15 Points communs et IMPORTANTS Decendre ou monter un escalier Couper un gâteau 1 appel récursif UNIQUEMENT sur données plus petites marche du dessous : n 1 au lieu de n, (b,a mod b) au lieu de (a,b), demi-morceau de gâteau : demi-tableau, 2 faire le travail pour passer à des données plus petites monter/descendre une marche : n en fonction de n 1, couper le gˆteau, 3 identifier les cas à résoudre sans appel récursif : première marche : n = 0, (a, 0), bouchée de gâteau : une case de tableau, 4 s arrêter à temps, plus de sens : dernière marche : n < 0, plus que des bouchées : a > b : pas de case, S. Verel, M.-E. Voge
16 Decendre ou monter un escalier Couper un gâteau Structure de ces algorithmes : exemple du PGCD Base : où on s arrête, pas d appel récursif si b = 0 alors retourner a... Hérédité : calcul à partir de paramètres plus "petits" si b = 0 alors retourner PGCD(b, c) fin S. Verel, M.-E. Voge
17 Définition (informelle) Définition Algorithmes classiques Un algorithme récursif est un algorithme qui fait appel à lui-même dans le corps de sa propre définition. Il existe deux types d algorithmes récursifs : les algorithmes récursifs qui se terminent : au bout d un nombre fini d opérations, l algorithme s arrête. les algorithmes récursifs qui ne se terminent pas : on peut imaginer que l algorithme continue "éternellement" de calculer. S. Verel, M.-E. Voge
18 Exemples Principe de la récursivité Définition Algorithmes classiques Algorithme calcul1(n : entier): : réel début si n = 0 alors retourner 2 retourner 1 2 (n 1) + 2 fin calcul1 n est pas un algorithme résursif S. Verel, M.-E. Voge
19 Exemples Principe de la récursivité Définition Algorithmes classiques Algorithme calcul2(n : entier): : réel début si n = 0 alors retourner 2 retourner 1 2 calcul2(n-1) +2 fin calcul2 est un algorithme résursif qui se termine S. Verel, M.-E. Voge
20 Exemples Principe de la récursivité Définition Algorithmes classiques Algorithme calcul3(n : entier): : réel début si n = 0 alors retourner 2 retourner 1 2 calcul3(n-2)+2 fin calcul3(n) est un algorithme résursif : si n est pair, calcul3 se termine si n est impair, calcul3 ne se termine pas S. Verel, M.-E. Voge
21 A méditier Calcul de la puissance Principe de la récursivité Définition Algorithmes classiques Algorithme puissanceterminale(a : réel, n : entier, acc : réel): : réel début si n = 0 alors retourner acc retourner puissanceterminale(a, n 1, acc a) fin Comment s exécute cet algorithme? puissanceterminale(1.5, 3, 1) récursivité terminale : équivalent à une itération résultat final donné par appel récursif condition de "base" = condition arêt boucle tantque S. Verel, M.-E. Voge
22 Intérêts Principe de la récursivité Définition Algorithmes classiques bien adapté à la résolution de certains problèmes (et pas seulement mathématiques!) algorithmes souvent moins "laborieux" à écrire : moins de variables, beaucoups moins de boucles. une résolution par algorithme récursif nécessite souvent de prendre du recul pour résoudre le problème (avantage!) S. Verel, M.-E. Voge
23 Définition Algorithmes classiques Parallèle entre principe de récurrence et algorithme récursif définition mathématique par récurrence très proche définition d un algorithme récursif (cf. puissance) Modes de calcul proches : a 3 = a.a 2 = a.a.a 1 = a.a.a Souvent, définition mathématique valide lorsque algorithme récursif associé se termine. S. Verel, M.-E. Voge
24 Définition Algorithmes classiques Parallèle entre principe de récurrence et algorithme récursif Base : initialisation de la récurrence si b = 0 alors retourner a... Hérédité : calcul à partir de paramètres plus "petits" si b = 0 alors retourner PGCD(b, c) fin S. Verel, M.-E. Voge
25 Calcul de la factorielle Définition Algorithmes classiques Factorielle { 1, si n = 0 n! = n.(n 1)!, Algorithme factorielle(n : entier): : entier début si n = 0 alors retourner 1 retourner n * factorielle(n-1) fin S. Verel, M.-E. Voge
26 Exécution de l algorithme Définition Algorithmes classiques Calcul de 3!. 1. factorielle(3) = 3 * factorielle(2) 2. > factorielle(2) = 2 * factorielle(1) 3. -> factorielle(1) = 1 * factorielle(0) 4. -> factorielle(0) = > factorielle(1) = 1 * 1 = 1 6. > factorielle(2) = 2 * 1 = 2 7. factorielle(3) = 3 * 2 = 6 S. Verel, M.-E. Voge
27 Recherche dichotomique Recherche d un mot dans un dictionnaire Définition Algorithmes classiques début pages de recherche <- dictionnaire tant que mot lu n est pas le mot recherché faire lire mot médian des pages de recherche si le mot lu est plus petit que mot recherché alors pages de recherche <- pages à droite du mot lu pages de recherche <- pages à gauche du mot lu fin tant que retourner (mot lu) fin S. Verel, M.-E. Voge
28 Recherche dichotomique Recherche d un mot dans un dictionnaire Définition Algorithmes classiques Algorithme recherche(m : mot, l : liste): : booléen variable lu : mot début lu median(l) si lu = m alors retourner Vrai si lu < m alors retourner recherche( liste à droite de lu) retourner recherche( liste à gauche de lu) fin Incomplet (jamais Faux)!! S. Verel, M.-E. Voge
29 Recherche dichotomique Recherche d un mot dans un dictionnaire Définition Algorithmes classiques Algorithme recherche(m : mot, l : liste): : booléen variable lu : mot début si l est vide alors retourner Faux lu median(l) si lu = m alors retourner Vrai si lu < m alors retourner recherche( liste à droite de lu) retourner recherche( liste à gauche de lu) S. Verel, M.-E. Voge
30 Quand utiliser un algorithme récursif? Est-ce que le problème dépend d un (ou plusieurs) paramètre(s)? Est-il possible de résoudre le problème lorsque la (les) valeur(s) du paramètre est "petite(s)"? Est-il possible de résoudre le problème à l aide de la résolution du problème portant sur une (des) "plus petite(s)" valeur(s) du paramètre? Si oui, oui, oui alors la résolution par un algorithme récursif est à envisager. S. Verel, M.-E. Voge
31 Tours de Hanoï (Édouard Lucas ) Le problème des tours de Hanoï consiste à déplacer N disques de diamètres différents d une tour de départ à une tour d arrivée en passant par une tour intermédiaire et ceci en un minimum de coups, tout en respectant les règles suivantes : on ne peut déplacer plus d un disque à la fois, on ne peut placer un disque que sur un autre disque plus grand que lui ou sur un emplacement vide. S. Verel, M.-E. Voge
32 Comment résoudre ce problème? Est-ce que le problème dépend d un (ou plusieurs) paramètre(s)? Oui le nombre de disques. Est-il possible de résoudre le problème lorsque la (les) valeur(s) du paramètre est "petite(s)"? Oui lorsque le nombre de disque est 1. Est-il possible de résoudre le problème à l aide de la résolution du problème portant sur une (des) "plus petite(s)" valeur(s) du paramètre? Oui... S. Verel, M.-E. Voge
33 Algorithme récursif Algorithme hanoi(n : entier, A : caractère, B : caractère, C : caractère ): : rien début si n = 1 alors écrire("déplacer ", A, " vers ", C) hanoi(n-1, A, C, B) ; écrire("déplacer ", A, " vers ", C) hanoi(n-1, B, A, C) ; fin S. Verel, M.-E. Voge
34 Exécution de l algorithme Hanoi(2, a, b, c ) Hanoi(3, a, b, c ) Hanoi(4, a, b, c ) Quel est le nombre de déplacements en fonction de n? Pour tout entier n 1, C n = 2 n 1. A démontrer par récurrence... Pour n = 64, les moines d Hanoi y sont encore... S. Verel, M.-E. Voge
35 Somme des cubes Calculer S(n) = n 3 Est-ce que le problème dépend d un (ou plusieurs) paramètre(s)? Oui n. Est-il possible de résoudre le problème lorsque la (les) valeur(s) du paramètre est "petite(s)"? Oui pour n = 0 ou n = 1 Est-il possible de résoudre le problème à l aide de la résolution du problème portant sur une (des) "plus petite(s)" valeur(s) du paramètre? Oui, S(n) = S(n 1) + n 3 S. Verel, M.-E. Voge
36 Somme des cubes Algorithme Algorithme sommecube(n : entier): : entier début si n = 0 alors retourner 0 retourner sommecube(n-1) +n 3 fin S. Verel, M.-E. Voge
37 Exécution de l algorithme Calcul de S(3) 1. sommecube(3) 2. > sommecube(2) 3. -> sommecube(1) 4. -> sommecube(0) = > sommecube(1) = = 1 6. > sommecube(2) = = 9 7. sommecube(3) = = 18 S. Verel, M.-E. Voge
38 Régionnement du plan Etant donné un nombre n de droites, calculer le nombre R n maximum de régions du plan obtenus Est-ce que le problème dépend d un (ou plusieurs) paramètre(s)? Oui le nombre n de droites. Est-il possible de résoudre le problème lorsque la (les) valeur(s) du paramètre est "petite(s)"? Oui pour n = 0 ou n = 1 Est-il possible de résoudre le problème à l aide de la résolution du problème portant sur une (des) "plus petite(s)" valeur(s) du paramètre? Oui, en comptant le nombre régions ajoutées lorsqu on ajoute une droite à n 1 droites : une région supplémentaire par droite coupée, plus une dernière région. S. Verel, M.-E. Voge
39 Régionnement du plan Algorithme Algorithme region(n : entier): : entier début si n = 0 alors retourner 1 retourner region(n-1) +n fin S. Verel, M.-E. Voge
40 Objectifs de la séance 3 écrire des algorithmes récursifs comme par exemple celui calculant la factorielle et recherchant un élément par dichotomie Questions principales du jour : Comment écrire ce que l on ne connait pas encore? S. Verel, M.-E. Voge
41 Travail de documentation Trouver de la documentation en rapport avec l ensemble de l enseignement. Quels sont vos premières références? S. Verel, M.-E. Voge
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 -
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
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
Algorithmique 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
STAGE 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
1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : [email protected] Page personnelle : http://www.lri.fr/ hivert
1 de 46 Algorithmique Trouver et Trier Florent Hivert Mél : [email protected] Page personnelle : http://www.lri.fr/ hivert 2 de 46 Algorithmes et structures de données La plupart des bons algorithmes
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
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
Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2
éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........
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
Quelques algorithmes simples dont l analyse n est pas si simple
Quelques algorithmes simples dont l analyse n est pas si simple Michel Habib [email protected] http://www.liafa.jussieu.fr/~habib Algorithmique Avancée M1 Bioinformatique, Octobre 2008 Plan Histoire
CORRECTION EXERCICES ALGORITHME 1
CORRECTION 1 Mr KHATORY (GIM 1 A) 1 Ecrire un algorithme permettant de résoudre une équation du second degré. Afficher les solutions! 2 2 b b 4ac ax bx c 0; solution: x 2a Solution: ALGORITHME seconddegré
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
La fonction exponentielle
DERNIÈRE IMPRESSION LE 2 novembre 204 à :07 La fonction exponentielle Table des matières La fonction exponentielle 2. Définition et théorèmes.......................... 2.2 Approche graphique de la fonction
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
Logiciel Libre Cours 3 Fondements: Génie Logiciel
Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli [email protected] Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/
Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.
Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé. L usage d une calculatrice est autorisé Durée : 3heures Deux annexes sont à rendre avec la copie. Exercice 1 5 points 1_ Soit f la
Correction du baccalauréat S Liban juin 2007
Correction du baccalauréat S Liban juin 07 Exercice. a. Signe de lnx lnx) : on fait un tableau de signes : x 0 e + ln x 0 + + lnx + + 0 lnx lnx) 0 + 0 b. On afx) gx) lnx lnx) lnx lnx). On déduit du tableau
Licence 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
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
Algorithme. Table des matières
1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............
Algorithmes et mathématiques. 1. Premiers pas avec Python. Exo7. 1.1. Hello world!
Exo7 Algorithmes et mathématiques Vidéo partie 1. Premiers pas avec Python Vidéo partie 2. Ecriture des entiers Vidéo partie 3. Calculs de sinus, cosinus, tangente Vidéo partie 4. Les réels Vidéo partie
Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions
Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental
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
# 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
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
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
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
IUT de Laval Année Universitaire 2008/2009. Fiche 1. - Logique -
IUT de Laval Année Universitaire 2008/2009 Département Informatique, 1ère année Mathématiques Discrètes Fiche 1 - Logique - 1 Logique Propositionnelle 1.1 Introduction Exercice 1 : Le professeur Leblond
Eteindre. les. lumières MATH EN JEAN 2013-2014. Mme BACHOC. Elèves de seconde, première et terminale scientifiques :
MTH EN JEN 2013-2014 Elèves de seconde, première et terminale scientifiques : Lycée Michel Montaigne : HERITEL ôme T S POLLOZE Hélène 1 S SOK Sophie 1 S Eteindre Lycée Sud Médoc : ROSIO Gauthier 2 nd PELGE
Initiation à LabView : Les exemples d applications :
Initiation à LabView : Les exemples d applications : c) Type de variables : Créer un programme : Exemple 1 : Calcul de c= 2(a+b)(a-3b) ou a, b et c seront des réels. «Exemple1» nom du programme : «Exemple
Cours 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
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.
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
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
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
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
Exercices - Polynômes : corrigé. Opérations sur les polynômes
Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)
INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies
INF 232: Langages et Automates Travaux Dirigés Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies Année Académique 2013-2014 Année Académique 2013-2014 UNIVERSITÉ JOSEPH
Exercices de dénombrement
Exercices de dénombrement Exercice En turbo Pascal, un entier relatif (type integer) est codé sur 6 bits. Cela signifie que l'on réserve 6 cases mémoires contenant des "0" ou des "" pour écrire un entier.
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.
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
Durée de L épreuve : 2 heures. Barème : Exercice n 4 : 1 ) 1 point 2 ) 2 points 3 ) 1 point
03 Mai 2013 Collège Oasis Durée de L épreuve : 2 heures. apple Le sujet comporte 4 pages et est présenté en livret ; apple La calculatrice est autorisée ; apple 4 points sont attribués à la qualité de
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
Algorithmique et programmation : les bases (VBA) Corrigé
PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi
III- Raisonnement par récurrence
III- Raisonnement par récurrence Les raisonnements en mathématiques se font en général par une suite de déductions, du style : si alors, ou mieux encore si c est possible, par une suite d équivalences,
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
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,
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
Texte Agrégation limitée par diffusion interne
Page n 1. Texte Agrégation limitée par diffusion interne 1 Le phénomène observé Un fût de déchets radioactifs est enterré secrètement dans le Cantal. Au bout de quelques années, il devient poreux et laisse
Cours d Informatique
Cours d Informatique 1ère année SM/SMI 2007/2008, Info 2 Département de Mathématiques et d Informatique, Université Mohammed V [email protected] [email protected] 2007/2008 Info2, 1ère année SM/SMI 1
Quelques Algorithmes simples
Quelques Algorithmes simples Irène Guessarian [email protected] 10 janvier 2012 Je remercie Patrick Cegielski de son aide efficace pour la programmation Java ; la section sur le codage de Huffman a été
Raisonnement par récurrence Suites numériques
Chapitre 1 Raisonnement par récurrence Suites numériques Terminale S Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES Raisonnement par récurrence. Limite finie ou infinie d une suite.
Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.
1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le
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
Cours d Algorithmique et de Langage C 2005 - v 3.0
Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU [email protected] Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris
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é
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
Les algorithmes de base du graphisme
Les algorithmes de base du graphisme Table des matières 1 Traçage 2 1.1 Segments de droites......................... 2 1.1.1 Algorithmes simples.................... 3 1.1.2 Algorithmes de Bresenham (1965).............
Qu est-ce qu une probabilité?
Chapitre 1 Qu est-ce qu une probabilité? 1 Modéliser une expérience dont on ne peut prédire le résultat 1.1 Ensemble fondamental d une expérience aléatoire Une expérience aléatoire est une expérience dont
ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.
ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de
Glossaire des nombres
Glossaire des nombres Numérisation et sens du nombre (4-6) Imprimeur de la Reine pour l'ontario, 008 Nombre : Objet mathématique qui représente une valeur numérique. Le chiffre est le symbole utilisé pour
ÉPREUVE COMMUNE DE TIPE 2008 - Partie D
ÉPREUVE COMMUNE DE TIPE 2008 - Partie D TITRE : Les Fonctions de Hachage Temps de préparation :.. 2 h 15 minutes Temps de présentation devant le jury :.10 minutes Entretien avec le jury :..10 minutes GUIDE
THEME : CLES DE CONTROLE. Division euclidienne
THEME : CLES DE CONTROLE Division euclidienne Soit à diviser 12 par 3. Nous pouvons écrire : 12 12 : 3 = 4 ou 12 3 = 4 ou = 4 3 Si par contre, il est demandé de calculer le quotient de 12 par 7, la division
Puissances d un nombre relatif
Puissances d un nombre relatif Activités 1. Puissances d un entier relatif 1. Diffusion d information (Activité avec un tableur) Stéphane vient d apprendre à 10h, la sortie d une nouvelle console de jeu.
Nombres premiers. Comment reconnaître un nombre premier? Mais...
Introduction Nombres premiers Nombres premiers Rutger Noot IRMA Université de Strasbourg et CNRS Le 19 janvier 2011 IREM Strasbourg Definition Un nombre premier est un entier naturel p > 1 ayant exactement
Exercices - Nombres complexes : corrigé. Formes algébriques et trigonométriques, module et argument
Formes algébriques et trigonométriques, module et argument Exercice - - L/Math Sup - On multiplie le dénominateur par sa quantité conjuguée, et on obtient : Z = 4 i 3 + i 3 i 3 = 4 i 3 + 3 = + i 3. Pour
Les nombres entiers. Durée suggérée: 3 semaines
Les nombres entiers Durée suggérée: 3 semaines Aperçu du module Orientation et contexte Pourquoi est-ce important? Dans le présent module, les élèves multiplieront et diviseront des nombres entiers concrètement,
Chapitre 1 Qu est-ce qu une expression régulière?
Chapitre 1 Qu est-ce qu une expression régulière? Les ordinateurs n ont pas du tout la même conception des textes que nous : pour nous, un texte est un ensemble d idées couchées sur papier. Nous nous en
Par 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
Programmation 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
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
Introduction à l algorithmique et à Java
à l algorithmique et à Java Licence 1 MASS, parcours SEMS et ESD à Java et à l algorithmique [email protected] www.i3s.unice.fr/ verel Équipe ScoBi - Université Nice Sophia Antipolis 1 er février 2013
Items étudiés dans le CHAPITRE N5. 7 et 9 p 129 D14 Déterminer par le calcul l'antécédent d'un nombre par une fonction linéaire
CHAPITRE N5 FONCTIONS LINEAIRES NOTION DE FONCTION FONCTIONS LINEAIRES NOTION DE FONCTION FONCTIONS LINEAIRES NOTION DE FONCTION Code item D0 D2 N30[S] Items étudiés dans le CHAPITRE N5 Déterminer l'image
Probabilités conditionnelles Loi binomiale
Exercices 23 juillet 2014 Probabilités conditionnelles Loi binomiale Équiprobabilité et variable aléatoire Exercice 1 Une urne contient 5 boules indiscernables, 3 rouges et 2 vertes. On tire au hasard
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............................
ARBRES BINAIRES DE RECHERCHE
ARBRES BINAIRES DE RECHERCHE Table de symboles Recherche : opération fondamentale données : éléments avec clés Type abstrait d une table de symboles (symbol table) ou dictionnaire Objets : ensembles d
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
Exo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.
Eo7 Calculs de déterminants Fiche corrigée par Arnaud Bodin Eercice Calculer les déterminants des matrices suivantes : Correction Vidéo ( ) 0 6 7 3 4 5 8 4 5 6 0 3 4 5 5 6 7 0 3 5 4 3 0 3 0 0 3 0 0 0 3
Resolution limit in community detection
Introduction Plan 2006 Introduction Plan Introduction Introduction Plan Introduction Point de départ : un graphe et des sous-graphes. But : quantifier le fait que les sous-graphes choisis sont des modules.
Cours 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
Vous revisiterez tous les nombres rencontrés au collège, en commençant par les nombres entiers pour finir par les nombres réels.
Cette partie est consacrée aux nombres. Vous revisiterez tous les nombres rencontrés au collège, en commençant par les nombres entiers pour finir par les nombres réels. L aperçu historique vous permettra
Architecture des ordinateurs TD1 - Portes logiques et premiers circuits
Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice
Cours 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.............................
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.
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 [email protected] Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre
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
EPREUVE 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
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
TOUT CE QU IL FAUT SAVOIR POUR LE BREVET
TOUT E QU IL FUT SVOIR POUR LE REVET NUMERIQUE / FONTIONS eci n est qu un rappel de tout ce qu il faut savoir en maths pour le brevet. I- Opérations sur les nombres et les fractions : Les priorités par
Chapitre VI - Méthodes de factorisation
Université Pierre et Marie Curie Cours de cryptographie MM067-2012/13 Alain Kraus Chapitre VI - Méthodes de factorisation Le problème de la factorisation des grands entiers est a priori très difficile.
Maple: premiers calculs et premières applications
TP Maple: premiers calculs et premières applications Maple: un logiciel de calcul formel Le logiciel Maple est un système de calcul formel. Alors que la plupart des logiciels de mathématiques utilisent
ALGORITHMIQUE ET PROGRAMMATION En C
Objectifs ALGORITHMIQUE ET PROGRAMMATION Une façon de raisonner Automatiser la résolution de problèmes Maîtriser les concepts de l algorithmique Pas faire des spécialistes d un langage Pierre TELLIER 2
Cours d arithmétique Première partie
Cours d arithmétique Première partie Pierre Bornsztein Xavier Caruso Pierre Nolin Mehdi Tibouchi Décembre 2004 Ce document est la première partie d un cours d arithmétique écrit pour les élèves préparant
Statistiques Descriptives à une dimension
I. Introduction et Définitions 1. Introduction La statistique est une science qui a pour objectif de recueillir et de traiter les informations, souvent en très grand nombre. Elle regroupe l ensemble des
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
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..............................
POKER 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
Activités numériques [13 Points]
N du candidat L emploi de la calculatrice est autorisé. Le soin, la qualité de la présentation entrent pour 2 points dans l appréciation des copies. Les résultats seront soulignés. La correction est disponible
Conversion d un entier. Méthode par soustraction
Conversion entre bases Pour passer d un nombre en base b à un nombre en base 10, on utilise l écriture polynomiale décrite précédemment. Pour passer d un nombre en base 10 à un nombre en base b, on peut
L 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
