INFO TEST ALGO BTS 28/1/14

              INFO  TEST    ALGO  BTS1A          28/01/14

                  Partie A sur papier ( 30 minutes )

                   On considère l’algorithme partiel suivant :

                   VARIABLES

                  L  liste

                  a , b, c, S  nombres

                  DEBUT

                 Saisir a , b , c

                L= [ ]                        

                Mettre a dans L

                Mettre b dans L

                Mettre c dans L

                Afficher L

                S = a+b+c

               Afficher S

          QUESTIONS: 

       1.   Que donne l’algorithme? 

             Réponse :  Il écrit L  et la somme de ses termes

             En Python .2, quel est l’indice de c dans la liste L ?    

             Réponse :     c  est d’indice 2  car c est le troisième terme de L. 

        2.  En Python.2, quand on écrit      for i in range(0,3) :

              quels sont les entiers i considérés ?   

             Réponse : Les entiers i considérés sont 0 ; 1 ; 2

        3.   En Python. 2, que signifient L[0] , L[1]  , L[2] dans la liste L ?    

             Réponse :  L[0] = a , L[1] = b , L[2] = c  

        4.  Ecrire cet algorithme , en Python .2 , avec une boucle for

             qui fasse intervenir les indices des termes de L.

             Réponse:

             from random import*

             def somlist():

                    a=input(" Donner la valeur de a : a = ")

                    b=input(" Donner la valeur de b : b = ")

                    c=input(" Donner la valeur de c : c = ")

                    L=[]

                    L=L+[a]+[b]+[c]      # On ne peut concaténer que des listes

                    print " La liste L est : L =  ",L

                    S=0

                    for i in range(0,3):

                          S=S+L[i]

                    print (" La somme des termes de la liste est S = ",  S

   On obtient par exemple :

>>> somlist()

 Donner la valeur de a : a = 1

 Donner la valeur de b : b = 2

 Donner la valeur de c : c = 3

 La liste L est : L =  [1, 2, 3]

La somme des termes de la liste est S =  6

     5.  Ecrire cet algorithme , en Python .2 , avec while.

from random import*

def somlist():

       a=input(" Donner la valeur de a : a = ")

       b=input(" Donner la valeur de b : b = ")

       c=input(" Donner la valeur de c : c = ")

       L=[]

       L=L+[a]+[b]+[c]

       print "La liste L est : L = ",L

       S=0

       i=0

       while i<3:

               S=S+L[i]

               i=i+1

       print " La somme des termes de L : S = " ,S

     On obtient par exemple :

>>> somlist()

Donner la valeur de a : a = 1

Donner la valeur de b : b = 2

Donner la valeur de c : c = 3

La liste L est : L =  [1, 2, 3]

La somme des termes de L : S =  6

>>>

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

                 Partie B sur ordinateur ( 30 minutes )

     1.  Albert connaît ses notes, en maths, en français,

            en anglais pour le second semestre.

              M=[12,9,15]       est la liste de ses notes de maths

              F=[7,9,11]          est la liste de ses notes de français

              A=[13,17,15]     est la liste de ses notes de anglais

          Ecrire en, Python.2, un algorithme qui donne chaque moyenne et la liste de ses

          trois moyennes.

             On peut proposer   comme réponse:

 

from random import*

from decimal import*

def moy():

       M=[12,9,15]     

       F=[7,9,11]        

       A=[13,17,15]

       m=0

       f=0

       a=0

       for i in range(3):

             m=m+M[i]

             f=f+F[i]

             a=a+A[i]

       mo=m/3.0

       fo=f/3.0  

       ao=a/3.0

       print " La moyenne de maths est: ",mo

       print " La moyenne de français est: ",fo

       print " La moyenne d'anglais est: ",ao

       print " La liste de ses trois moyennes est ", [mo,fo,ao]

         On obtient :

>>> moy()

 La moyenne de maths est:  12.0

 La moyenne de français est:  9.0

 La moyenne d'anglais est:  15.0

 La liste de ses trois moyennes est  [12.0, 9.0, 15.0]  

  2.Soit la matrice H=[ [1,0,1],[0,1,1],[1,1,0]]

    a. En Python. 2, que représente H[0] ? (H[0])[2] ? 

          Réponse :

                         H[0] est la première ligne de la matrice H

                            ( H[0])[2] est le troisième terme

                           de la première ligne de la matrice H

    b. Ecrire en Python .2, un algorithme qui, à l’aide d’une boucle,

        donne la somme  des termes de la première ligne.

            Réponse possible:

from random import*

def som():

       H=[[1,0,1],[0,1,1],[1,1,0]]

       S=0

       for i in range(3):

             S=S+(H[0])[i]

       print " la somme de la première ligne est ",S

                    On obtient :

>>> som()

 la somme de la première ligne est  2

>>>

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