TEST ALGO

                               TEST d'Algo     avril. 

      Soit  l'algorithme suivant en Python 2.7:

from random import*
def date():
      print "Soit j le numero du mois de naissance. "
      print "Soit m le numero du jour dans le mois de naissance.  "
      k=input("Caluler et donner le nombre obtenu en considérant k = 12j+ 31m   ")
      a=input("Donner l'annee de naissance avec quatre chiffres   ")
      L=["janvier","fevrier","mars","avril","mai","juin","juillet","aout","septembre","octobre","novembre","decembre"]
      for m in range(1,13):
           for j in range(1,32):
                z=12*j+31*m
                if z==k:
                     print "Votre date de naissance est: ",j,L[m-1],a

                  
                   En le faisant tourner on a obtenu:

>>> date()
Soit j le numero du mois de naissance.
Soit m le numero du jour dans le mois de naissance. 
Caluler et donner le nombre obtenu en considérant k = 12j+ 31m   
503
Donner l'annee de naissance avec quatre chiffres   2017
Votre date de naissance est:  29 mai 2017
>>>     
        
        QUESTIONS:

    1. Qu'est-ce que le numero du mois de naissance?

    2. Si l'on saisit pour k l'entier 364 que va donner l'algorithme ?

    3. Quand on voit :   for m in range(1,13):

        Que peut-on dire des valeurs de m ?

    4.Qu'est-ce que L[m-1] quand m= 6 ?

    5. Quel est la plus grand entier j  ?

    6. Que vaut k pour quelqu'un né le 7 septembre 2018 ?

    7. Modifier l'algorithme pour qu'il donne l'âge par excès de la

        personne, à un mois près. 

   8. Modifier l'algorithme pour utiliser deux while au lieu de deux  for.

   9. Que se passe-t-il quand z est différent de k ?

   10. Justifier que z et 7 m sont congrus  modulo 12.

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