SUJET 44 mai 2017

       E22   BTS SIO    Sujet  mai 2017

             PREMIER TRAVAIL  30 minutes sur papier

   Voici deux algorithmes partiels écrits en Python 2.7.

   Lisez les puis répondez aux questions.

from random import*
import decimal
def f(x):
       return ...................
def suite():    
       N=100  
       u0=input("Donner la valeur de son premier terme u0 : ")            
       print u0
       u=f(u0)
       ecart=0.001
       for i in range(1,N):
             print u
             v=f(u)
             if  abs(u-v)<ecart:
                     return "La suite ( un ) ............... vers  ",v         
             u=v
       return "La suite ( un ) ne ................  ........ "     
    

               QUESTIONS:

       1. Soit la suite ( u) définie sur les entiers naturels par:

                        u0 = 1

                       un + 1  = √( un + 1)  pour tout entier naturel n

          Quelle expression en x doit-on mettre à la place des pointillés

          dans le premier algorithme et quelle valeur de u0 doit-on saisir

          dans le second algorithme ?

           ( Rappel , en Python 2.7      √ x   est noté x**0.5     )

         2. Quand on écrit     for i in range(1,N):

            avec N = 100 , quelles sont les valeurs prises par i   ?

        3. Que signifie    if  abs(u-v)<ecart:     

            avec  ecart =0.001

         4. Dans le second algorithme que doit-on mettre

             à la place des pointillés ?

         5. Quel est l'intérêt de ces deux algorithmes ?

         6. a. Pour la suite (un )  telle que :

                        u0 = 1

                       un + 1  = f( un  )  pour tout entier naturel n

                       avec   f( x ) = 1. / x + 1

                donner les valeurs exactes des ses cinq premiers termes

                   u1  , u2 ,  u3  , u4   ,u5

              b. Que va afficher le second algorithme?

         SECOND TRAVAIL   30 minutes sur ordinateur

          1. Exécuter l'algorithme suite() pour chacune des suites

             citées plus haut.

          2. Proposer un algorithme , si possible en Python 2.7, 

              qui pour la suite ( un )  définie sur les entiers naturels

             par :         u0 = 1

                           un + 1  = √( x + 1)  pour tout entier naturel n

             affiche la liste L de ses 10 premiers termes .

                            --------------------------------------------------------------