INFO PYTHON 2.7 TEST BTS1

                                                TEST   PYTHON 2.7 QUESTIONS         2012 BTS1

           PARTIE A

    1.  Voici  deux algorithmes écrit en Python 2.7

          dans la fenêtre window:

def h(x):
       return 2*x*x - x + 2
def g(x):
       return x**2+x+1
print g(0)
print g(1)
print g( 2)

    Question a.

          Qu'obtient-on quand on appuye seulement sur F5?

    Question b.

         Qu'obtient-on quand ensuite on écrit  h( 1 )

         dans la fenêtre Python Shell?

      Réponse:  

      a. On obtient :

>>>
1
3
7
>>>

         On obtient  g( 0 ) , g( 1 ) , g( 2)

          C'est le second script qui est exécuté à cause des print mis à la ligne.

    b. On obtient :

>>> h(1)
3
>>>

               Après le second  script exécuté d'office,

              h(1) lance l'exécution du premier script qui donne alors la valeur de

               la fonction h en x = 1

      2.   Voici  deux algorithmes écrit en Python 2.7

          dans la fenêtre window:

def info():
     a=raw_input("Indiquer le nom ")
     b=input("Indiquer la première note ")
     c=input("Indiquer la seconde note ")
     print a,"a pour moyenne", moyenne( a,b,c)

def moyenne( a,b,c):
      return (b+c)/2.0

          Question a.

              Donner la nature des variables a,b,c .

          Question b.

           Pourquoi a-t-on mis 2.0  au lieu de 2 pour diviser b + c par 2  ?

           Question c.

          Quel est le script à lancer pour obtenir la moyenne des notes?

        Réponses:

               a . Nature des variables a,b,c.

                           a est une chaîne

                            b et c sont de valeurs numériques

            b.  On a  mis 2.0 au lieu de 2 pour que l'ordinateur donne un nombre décimal

                  pour le calcul.

           c. Il faut lancer info() pour obtenir la moyenne des notes.

   3.   Voici deux scripts en Python 2 . 7

def etude():
     n=input("donner un entier n: n =  ")
     k=input("donner un entier non nul k: k = ")
     print n,"est divisible par ",k,"est",divisible(n,k)

def divisible( n, k ):
     return n%k == 0

              Question a.

                Que donne le premier script pour n= 6 et k = 3? 

             Question b.

                 Que donne le premier script pour n = 12 et k = 5 ?

           Question c.

                 Que signifie n%k   ?

      Réponse:

                 a. Il donne:

>>> etude()
donner un entier n: n = 6
donner un entier non nul k: k = 3
6 est divisible par 3 est True
>>>

               b.  Il donne:

>>> etude()
donner un entier n: n = 12
donner un entier non nul k: k = 5
12 est divisible par 5 est False
>>>

             c.   n % k est le reste entier de la division de n par k

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

              PARTIE B 

             Ecrire en Python 2.7 un script qui, quand on rentre une liste de deux listes

              comportant chacune  un nom et deux notes, affiche les noms suivis de

              la moyenne des deux notes. 

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

    REPONSE:                 On peut considérer:

from random import*
def trim():
       L=input("Entrer une liste de deux listes comportant chacune un nom et deux notes " )
       M=[]
      for i in range(0,2):
            M.append(L[i][0])
      m1=round((L[0][1]+L[1][1])/2.0,2)
      m2=round((L[0][2]+L[1][2])/2.0,2)
      M.insert(1,m1)
      M.insert(3,m2)
      print " BULLETIN:",M

                                     On obtient par exemple:

>>> trim()
Entrer une liste de deux listes comportant chacune un nom et deux notes [["Alex",17,19],["Cleo",13,8]]
BULLETIN: ['Alex', 15.0, 'Cleo', 13.5]
>>>

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