2. Séances dirigées 322) 3)<strong>de</strong>f fusion(a,b):"""fonction fusionnant les <strong>de</strong>ux listes a,b supposees triees,r<strong>et</strong>ourne une liste triee.a chaque passage dans <strong>la</strong> boucle, on ajoute un element 5provenant <strong>de</strong> l’une <strong>de</strong>s <strong>de</strong>ux listes, on conserve pour ces<strong>de</strong>ux listes l’indice <strong>de</strong> l’element suivant a insererdans <strong>la</strong> liste resultat : k pour <strong>la</strong> liste a, n pour <strong>la</strong> liste ba chaque passage, on choisit le plus p<strong>et</strong>it, 10si c’est celui <strong>de</strong> <strong>la</strong> liste a, on incremente k,si c’est celui <strong>de</strong> <strong>la</strong> liste b, on incremente nil faut faire attention lorsqu’on a ajouter les elements d’une liste,parce que l’indice k ou n ne <strong>de</strong>signe aucun element, <strong>de</strong> plus, 15ce<strong>la</strong> signifie qu’on doit ajouter les <strong>de</strong>rniers elements<strong>de</strong> l’autre liste."""c=[]l=len(a)+len(b) 20k=0n=0while len(c)
2. Séances dirigées 33# qui serait perdue a <strong>la</strong> fin <strong>de</strong> <strong>la</strong> fonctionk=[2,8,9,5,15,4,56,78,85,15,45,3]print "non triee ", ktri(k)print "triee ",k65fin correction TD 2.1.1⊓⊔2.2 Table <strong>de</strong> mortalité2.2.1 EnoncéLe programme est ici assez proche <strong>de</strong> celui réalisé en secon<strong>de</strong> séance <strong>de</strong> cours. Les données se résume àune table <strong>de</strong> mortalité 1 . C<strong>et</strong>te table consiste en une matrice :âge homme femme ensemble0 100000 100000 1000001 99571 99658 996132 99537 99631 995833 99514 99613 995624 99495 99599 995465 99479 99587 99532...On considère <strong>la</strong> <strong>de</strong>rnière colonne qui forme une suite (N i ) i⩾0. N i est le nombre <strong>de</strong> survivants à l’âge i.Par exemple pour i ⩽ j, p + ij = N jN iest <strong>la</strong> probabilité d’être encore en vie à l’âge j sachant qu’on a l’âge i.Autrement, l’espérance <strong>de</strong> vie est en fait l’âge moyen <strong>de</strong> mourir. D’une autre manière, p ij = N j−N j+1N iest<strong>la</strong> probabilité <strong>de</strong> mourir à l’âge j sachant qu’on a l’âge i 2 . En continuant ce raisonnement, on peut écrireque l’espérance <strong>de</strong> vie à l’âge i est définie par :∞∑j p ijj=iE i =(2.1)∞∑p ij1) Ecrire une fonction qui r<strong>et</strong>ourne <strong>la</strong> probabilité <strong>de</strong> mourir à un âge j sachant qu’on a l’âge i 3 .2) Ecrire une fonction qui r<strong>et</strong>ourne l’espérance <strong>de</strong> vie à l’âge i.3) Transformer ce programme <strong>de</strong> façon à ce qu’il fonctionne avec une c<strong>la</strong>sse.4) Les données contiennent <strong>la</strong> table <strong>de</strong> mortalité pour les hommes, les femmes <strong>et</strong> l’ensemble <strong>de</strong> ces <strong>de</strong>uxpopu<strong>la</strong>tions. Quelle est <strong>la</strong> proportion <strong>de</strong> femmes <strong>de</strong> plus d’un an ? Ecrire <strong>la</strong> métho<strong>de</strong> associée. En aparté,quelle est <strong>la</strong> proportion <strong>de</strong> femmes ?5) Une personne <strong>de</strong> 50 ans souhaite ach<strong>et</strong>er un appartement en viager à une personne <strong>de</strong> 70 ans. Combien<strong>de</strong> temps pourra-t-elle vivre dans c<strong>et</strong> appartement ?6) On suppose que <strong>la</strong> mortalité infantile va être divisée par <strong>de</strong>ux (mortalité à un an). On se <strong>de</strong>man<strong>de</strong> ceque <strong>de</strong>viendra l’espérance <strong>de</strong> vie dans ce cas. Pour ce faire, on crée une secon<strong>de</strong> c<strong>la</strong>sse Popu<strong>la</strong>tionPlus1. téléchargeable <strong>de</strong>puis http://www.<strong>xavierdupre</strong>.<strong>fr</strong>/enseignement/td_python/python_td_simple/in<strong>de</strong>x.html, données 2003-2005 France2. N j > N j+1 car N j désigne le nombre <strong>de</strong> personnes encore vivantes à l’âge j, il y en a moins l’année d’après.3. faire attention aux divisions entièresj=i