1 Polynômes 2 Algorithme de Horner
Python. 1 Polynômes. Pour représenter les polynômes avec Python on peut utiliser le module numpy. • poly1d([an
I Méthode Horner
Sorties : Q qui est égal à P(x) sous la forme d'un polynôme de Horner. 8. Algorithme 1 : Algorithme de Horner 6 Avec python def Horner(Cx): n=len(C).
Lalgorithme de Hörner
1 may 2010 "informatique". Nous suggérons d'autres algorithmes qui l'utilisent d'une manière plus ou moins cachée. 1.2 L'algorithme de Hörner binaire.
Chapitre 1 : introduction aux fonctions récursives Table des mati
3.2 Algorithme de Horner . 3.2.3 Ecriture récursive de Horner . ... Définition d'une fonction avec le mot-clef def : en Python on sait que la syntaxe ...
Chapitre 4 Polynômes : évaluation et interpolation
Algorithme 1: Evaluation de Horner. L'algorithme est de complexité linéaire en n. Exercice 4.1.1 Programmez l'évaluation d'Horner en Python et en xcas verifiez
Feuille dexercices dinformatique – Récursivité 2019-2020 Pour
Écrire une version récursive Horner(Lx) de l'algorithme de Horner
CAPES MATHS OPTION INFORMATIQUE ALGORITHMIQUES
Ecrire en Python la fonction qui recherche un élément e dans un tableau tab. Complétez l'invariant de boucle de l'algorithme de Horner : « Au début de ...
Analyse Numérique
2.3.1.2 Evaluation d'un polynôme : algorithme de Hörner. L'évaluation d'un polynôme en un point ? peut se faire en calculant chacun des produits.
C:UsersPascalDesktopCours_TeX. Cours IPT Cours9
12 ene 2017 Exemple 2. Cas des boucles "for". Que renvoie l'algorithme de Hörner implémenté dans le programme suivant ? Python def calc(a
livre-algorithmes EXo7.pdf
Arithmétique – Algorithmes récursifs . PREMIERS PAS AVEC Python 2 ... (c) Écrire une fonction qui calcule P(?) par l'algorithme de Horner.
[PDF] I Méthode Horner
Appliquer cet algorithme avec les polynômes suivants f(x)=4x3 ? 8x2 ? 7x ? 1 Algorithme 1 : Algorithme de Horner 6 Avec python def Horner(Cx):
[PDF] Lalgorithme de Hörner
1 mai 2010 · L'algorithme de Hörner intervient dans de nombreuses situations : 1 évaluation d'un polynôme en un point 2 traduction binaire - décimal 3
[PDF] Récursivité Partie I (Séance IV de 2017-2018) - PanaMaths
Récursivité Partie I (Séance IV de 2017-2018) # # Algorithmes/codes du cours Programme récursif (ce n'est pas non plus du Horner !!!)
[PDF] La méthode de Hörner - Mathwebfr
1 sept 2018 · Considérons un polynôme P dont une racine est égale à a La méthode de HÖRNER va nous permettre de trouver les coefficients du polynôme Q
[PDF] Algorithmes fondamentaux
Un petit nombre d'algorithmes servent de modèle à la plupart des algorithmes Le schéma de Horner est légèrement plus efficace : il permet d'évaluer un
[PDF] Chapitre 1 : introduction aux fonctions récursives Table des mati`eres
Exercice : Avec tout ce qui préc`ede écrire une fonction HornerR(xP) qui effectue l'algorithme de Horner de mani`ere récursive a) Avec la fonction pop en
[PDF] livre-algorithmespdf - Exo7 - Cours de mathématiques
Algorithmes et mathématiques PREMIERS PAS AVEC Python 2 (c) Écrire une fonction qui calcule P(?) par l'algorithme de Horner
[PDF] CAPES MATHS OPTION INFORMATIQUE ALGORITHMIQUES
Ecrire en Python la fonction qui recherche un élément e dans un tableau tab Complétez l'invariant de boucle de l'algorithme de Horner : « Au début de
[PDF] Analyse Numérique
2 3 1 2 Evaluation d'un polynôme : algorithme de Hörner 35 On préfère généralement utiliser l'algorithme de Hörner qui repose sur la factorisation
Comment faire la méthode de Horner ?
qui est appelée méthode de Horner. Un élément de la ligne inférieure s'obtient en multipliant l'élément qui le préc? par le nombre figurant dans la première colonne, en pla?nt le résultat dans sa colonne et en effectuant la somme de deux premiers nombres de la colonne.Quand utiliser Horner ?
La règle de Horner ne peut être utilisée que lorsque le diviseur est un polynôme du premier degré. Par exemple, divisons 2x4?18x2+2x+5 par x+3.- Il faut construire un tableau de 3 lignes et n colonnes ou n est le degré du polynôme f (donc ici n vaut 4). La colonne 1 ne contient que le réel a = ? 2 a = -2 a=?2 a la 2ème ligne, les autres cases restent vides.
MP*Feuille d"exercices d"informatique - Récursivité 2019-2020Pour chacun des programmes suivants, on prouvera la validité de la réponse
et on évaluera la complexité dans le pire cas.Exercice 1:
Écrire un programme récursifsomchiffre(n)qui renvoie la somme des chiffres décimaux de l"entiern. Exercice 2: Écrire un programme récursifbinom(n,k)d"argumentn,k2N qui renvoie le coefficient binomial¡n k¢. On cherchera une complexité mini- male, et on fera bien attention à travailler sur des entiers.Exercice 3 - Encore Fibonacci:
Montrer que la suite de Fibonacci vérifie
Fib(2nÅ1)AEFib(nÅ1)2ÅFib(n)2
En déduire un programme calculant les nombres de Fibonacci, et conjectu- rer sa complexité temporelle. (On ne demande pas de preuve.)Exercice 4 - Fibonacci forever:
En exploitant la matrice 2£2 qui fait passer de (Fn,Fn¡1) à (FnÅ1,Fn), déter- miner un algorithme de complexitéO(log2n) qui calculeFn. On ne demande pas d"implémentation enPYTHON.Exercice 5:
Écrire une version récursiveHorner(L,x) de l"algorithme de Horner, oùLest la liste croissante des coefficients etxun nombre.Exercice 7 - Multiplication du paysan russe:
russe(a,b)qui prend en argument deux entiers naturelsa,bet qui renvoie leproduitaben n"utilisant que des additions, des multiplications par 2 et des
divisions par 2. Le programme doit être linéaire en log 2b.Exercice 8:
Untriminoest un domino constitué de trois carrés comme ceci :. Jus- tifier qu"on peut paver un damier carré de coté 2 n(nÊ1) privé d"une case par des triminos? (Les triminos se tournent et se retournent.) Donner un al- gorithme (dans un pseudo-langage) qui prend en entrée un entiernet une couple (i,j)2[[1,2n]]2et qui renvoie un pavage du damier de côté 2nprivé de la case (i,j).Exercice 9:
Écrire un programmepartition(n)qui renvoie le nombre de partition d"un ensemble de cardinaln. (Indication : on pourra remarquer qu"une partition de [[1,n]] est uniquement déterminée par une partieXcontenantnet une partition de [[1,n]]\X.) On ne demande pas d"évaluer la complexité.Exercice 10 - Encore Flavius Josephus:
On dispose lesnentiers 0,1,2,...,n¡1 en cercle. On en raye un sur deux en commençant par le 1. On noteJ(n) le dernier rayé. Par exemple,J(4)AE0 etJ(5)AE2. En distinguant les casnpair etnimpair, écrire un programme récursifJosephqui renvoieJ(n).Exercice 11 - Scribe:
Les scribes égyptiens (fait attesté en 1880 av. JC) savait écrire tout rationnel rstrictement compris entre 0 et 1 comme somme d"inverse d"entiers tous différents,i.e. rAEpX jAE01n javecnjÇnjÅ1. une liste [n0,...,np] telle queab AE1n0Å¢¢¢Å1n
p. Examiner sa complexité en tempsetenespace. (Onfera attentionàla gestiondesrationnels; mieuxvaut travailler avec des couples d"entiers premiers entre eux.)Écrire aussi une version itérative.
1 MP*Feuille d"exercices d"informatique - Récursivité 2019-2020Indications Exercice 1.On fera décroître le nombre de chiffres. Exercice 2.On utilise la formule de récurrenceà n k! AE nk n¡1 k¡1! valable sikÊ1. Et on fait bien attention à d"abord effectuern£Ã
n¡1 k¡1! avant de diviser par k!Exercice 4.On aµ1 1
nAEµFnÅ1Fn
F Exercice 6.On ne touche pas àx, qui sert jusqu"à la fin. Exercice 7.Il faut passer des exposants au produit et des produits aux sommes. Exercice 8.Utiliser une méthode "diviser pour régner". Exercice 9.Le plus difficile est d"écrire une relation de récurrence. On aura aussi besoin de programmer les coefficients binomiaux : une fonction récur- sive est pratique. Exercice 10.Regarder ce qui se passe après un tour complet. Exercice 11.Un algorithme glouton convient : prendre le plus petit entiern tel que 1nÉab
. Puisque Python ne gère pas naturellement les fractions, il faut utiliser des couples (a,b) d"entiers.2 MP*Feuille d"exercices d"informatique - Récursivité 2019-2020Solutions Exercice 1.On note¾(n) la somme des chiffres den. Alors¾ÃX kÊ0a k10k! AE a0ž(X
kÊ1a k10k) car¾(10a)AE¾(a). D"où un invariant pour le programmesuivant.1defsomchiffre(n):2ifn<10:3return(n)4else:5return(n%10 + somchiffre(n//10))La pile d"appels récursifs contient autant de termes quena de chiffres dé-
cimaux. À chaque appel, on effectue un nombre fixé d"opérations. Donc la complexité est enO(lnn). (En effet, siC(n) désigne le nombre d"opérations Une récurrence (relativement) immédiate donne le résultat.)Exercice 2.Le programme est facile.1defbinom(n,k):2ifn Attention à bien mettre le casnAE2 dans l"initialisation.1deffibor(n):2ifn==0:3return(0)4elifn==1:5return(1)6elifn==2:7return(1)8elifn%2==0:9r=fibor(n//2)10return(r*(fibor(n//2 + 1) + fibor(n//2¡1)))11else:12return(fibor(n//2 + 1)**2 + fibor(n//2)**2)Si on noteC(n) le nombre d"opérations élémentaires effectuées pour l"argu- n¡1paran¡1Åanx.1defHorner(L,x):2ifle n(L) == 0:return03elifle n(L) == 1:returnL[0]4else:5n =len(L)6L[n¡2] + = L[n¡1]*x7L.pop()8returnHorner(L,x)3 MP*Feuille d"exercices d"informatique - Récursivité 2019-2020Exercice 7.Onchangelesproduitsensommesdansl"algorithmed"exponen- tiation rapide.1defrusse(a,b):2ifa == 0:3return04elifa%2 == 0:5returnrusse(a//2, b + b)6else:7returnrusse(a//2, b+b) + bTerminaison : à chaque appel récursif,aest divisé par 2. C"est un entier na- Exercice 9.On commence par calculern!.1deffact(n):2ifn == 0:3return14returnn*fact(n¡1)On en déduit un programme calculant les coefficients binomiaux partition du complémentaire.1defpartition(n):2ifn == 0:3return14s = 05forkinr ange(n):6s += binomial(n¡1,k)*partition(k)7returnsExercice 10.Après avoir fait un tour complet, on renumérote les survivants : MP*Feuille d"exercices d"informatique - Récursivité 2019-20206returnscribe_rec(q*a¡b, q*b, L+[q])7else:8returnscribe_rec((q+1)*a¡b , (q+1)*b , L+[q+1])90. La correction vient de la formuleÃ
n k! AE nk n¡1 k¡1! . Enfin, cette même for- mule prouve par récurrence surkque la complexité est enO(k), car la pile d"éxécution se vide enkétapes, et on a un nombre finie fixé d"opérations élémentaires à chaque étape.
Exercice 3.On implémente les formules, qui se démontrent par récurrence. 1b0Å"2b1Å¢¢¢Å"pbp¡1eta%bAE"0. Alorsexo(a,b)AE["0]Åexo(a0,b), (avec
la syntaxe dePYTHON), ce qui conclut. Exercice 6.SiLAE[a0,a1,...,an], l"idée est de supprimeranet de remplacer a 0ÉkÉn.1defbinomial(n,k):2returnfact(n)//(fact(k)*fact(n¡k))On utilise enfin la formule de récurrence :pnÅ1AEnX
kAE0Ã n k! p kqui se prouve en remarquant qu"une partition de [[1,nÅ1]] est uniquement déterminée par une partie de [[1,n]] (celle qui sera dans la même partie quenÅ1) et d"une 1)AE2J(p)Å2.1defJoseph(n):2ifn==1:3return04elifn%2==0:5return(2*Joseph(n//2))6else:7return(2*Joseph(n//2)+2)Vu quenest divisé par deux à chaque étape, on va appeler récursivement la
fonction de l"ordre de ln 2nfois. Vu qu"on ne fait qu"un nombre fixé d"opé-
ration à chaque fois, cela donne une complexité temporelle enO(lnn), soit linéaire en la taille den. Exercice 11.Le premier programme permet de passer du couple (a,b) au couple (a0,b0) tel quea/bAEa0/b0¡1/nd"ajouternà la listeL, avec le bon n.1defscribe_rec(a,b,L):2ifa == 0:3returna,b,L4q = b//a5ifb%a == 0: 4 10defscribeR(a,b):11returnscribe_rec(a,b,[])[2]Donnons une version itérative.
1defscribe2(a,b):2n = 13L = []4whilea >0:5whilen*a < b:6n = n+17a,b = n*a¡b, n*b8L.append(n)9returnLTerminaison : puisquena¡b2[[0,a¡1]], le dénominateur décroît stricte-
ment et reste un entier positif tant qu"il est non nul : il tombe donc sur 0 en un temps fini. Complexité : La complexité en espace ne dépend que de la taille de la liste Lpuisqu"on n"utilise qu"un nombre fixé de variables. Mais puisqu"au signe prèsna¡best le quotient deaparb, le nombre d"itération dans la boucle while - qui va donner le nombre de terme dansL- est unO(lnb) d"après le théorème de Lamé (et puisque 0ÇaÇbpar hypothèse). En temps, c"est la même chose, puisqu"on ne fait qu"un nombre fixé d"opérations par étapes. Correction : notonsa0,b0les arguments etak,bk,[n1,...,nk] les valeurs de a,b,Là lakeétape. Montrons queakb kÅkX pAE11n pest un invariant de boucle. Mais siak6AE0,akÅ1AEnkÅ1ak¡bk,bkÅ1AEnkÅ1bk, doncakb kAEakÅ1b kÅ1Å1n kÅ1. Or cet invariant vaut
a0b 0à l"entrée et à la sortie,akest nul.5
quotesdbs_dbs15.pdfusesText_21
[PDF] méthode des couts variables exercices corrigés
[PDF] exercice seuil de rentabilité corrigé pdf
[PDF] levier opérationnel calcul
[PDF] représentation graphique du seuil de rentabilité
[PDF] calcul du seuil de rentabilité avec plusieurs produits
[PDF] indice de sécurité calcul
[PDF] exercice seuil de rentabilité bts
[PDF] choix d'investissement exercices
[PDF] rentabilité des investissements cours
[PDF] calcul drci+formule
[PDF] calcul de rentabilité d'un investissement industriel
[PDF] etude de rentabilité d'une entreprise
[PDF] ratio de rentabilité commerciale
[PDF] rentabilité financière d'une entreprise