Déroulement réel des cours

La « pensée » du mercredi 21 août 2019, 21h57m16s :
On ne ment jamais autant qu'avant les élections, pendant la guerre et après la chasse.
  -- Georges Clemenceau
1 : semaine du lendi 19 janbier 2009
 Cours n°1 (Cumul=2h) : [Voir le CM n°1]
2 : semaine du lendi 26 janbier 2009
 TD n°1 (Cumul=2h) : [Voir le TD n°1]
 Cours n°2 (Cumul=4h) : [Voir le CM n°2]
3 : semaine du lendi 2 fébrier 2009
 TD n°2 (Cumul=4h) :
  • Tester l'exercice grille.py du CM précédent.
    grille.py [sans numéros de lignes]
    1. # -*- coding: utf-8 -*-
    2. import curses
    3. # initialisations
    4. ecran=curses.initscr()       # création de l'écran "graphique"
    5. maxl,maxc=ecran.getmaxyx()   # dimensions de l'écran
    6. horizontal="-"               # pour dessiner les lignes horizontales
    7. vertical="|"                 # pour dessiner les lignes verticales
    8. intersection="+"             # pour dessiner les intersections
    9.  
    10. # paramètres
    11. ecarth=4   # écart entre deux lignes horizontales
    12. ecartv=3   # écart entre deux lignes verticales
    13.  
    14. # création des lignes horizontales
    15. l=0                                  # position de la première ligne
    16. while l<maxl-1 :                     # pour chaque ligne
    17.   ecran.addstr(l,0,horizontal*maxc)  # afficher une ligne horizontale
    18.   l+=ecarth                          # ligne suivante
    19.  
    20. # création des lignes verticales
    21. c=0                                  # position de la première ligne
    22. while c < maxc-1 :                   # pour chaque ligne
    23.   l=1                                # position de la première case
    24.   while l < maxl-1 :                 # pour chaque case
    25.     if l % ecarth == 0 :             # tous les "ecarth" lignes
    26.       ecran.addch(l,c,intersection)  # afficher une intersection
    27.     else :                           # sinon...
    28.       ecran.addch(l,c,vertical)      # afficher un "pipe"
    29.     l+=1                             # ligne suivante
    30.   c+=ecartv                          # colonne suivante
    31.  
    32. ecran.getch()    # attente d'une frappe clavier
    33. curses.endwin()  # revenir à la console
  • Écrire un programme qui remplit un tableau 12 colonnesx10 lignes avec des nombres aléatoires compris entre 5 et 15, et qui les affiche proprement sur l'écran. (Le programme doit être fortement paramétré.)
    alea2.py [sans numéros de lignes]
    1. # -*- coding: utf-8 -*-
    2. import random,curses
    3.  
    4. ecran= curses.initscr() # créer l'écran graphique
    5. tableau=[]              # création du tableau vide
    6. nblg=10                 # nombre de lignes
    7. nbcol=12                # nombre de colonnes
    8. larg=5                  # largeur d'une cellule
    9. haut=2                  # hauteur d'une cellule
    10.  
    11. #créer le tableau
    12. for l in range(0,nblg) :                         # boucle sur chaque ligne
    13.   tableau.append([])                             # ajouter une ligne au tableau
    14.   for c in range(0,nbcol) :                      # boucle sur chaque colonne
    15.     tableau[l].append(int(random.random()*10)+5) # ajouter une colonne à la ligne
    16.  
    17. # afficher le tableau
    18. for l in range(0,nblg) :                            # boucle sur chaque ligne
    19.   for c in range(0,nbcol) :                         # boucle sur chaque colonne
    20.     ecran.addstr(l*haut,c*larg,str(tableau[l][c]))  # ajouter une cellule
    21.  
    22. ecran.getch()     # attente d'une frappe clavier
    23. curses.endwin()   # revenir à la console
  • Écrire un programme qui coche aléatoirement des cases dans un tableau 12 colonnesx10 lignes avec une probabilité de 0.2, et qui affiche proprement le résultat. (Le programme doit être fortement paramétré.)
    alea3.py [sans numéros de lignes]
    1. # -*- coding: utf-8 -*-
    2. import random,curses
    3.  
    4. ecran= curses.initscr() # créer l'écran graphique
    5. tableau=[]              # création du tableau vide
    6. nblg=10                 # nombre de lignes
    7. nbcol=12                # nombre de colonnes
    8. larg=5                  # largeur d'une cellule
    9. haut=2                  # hauteur d'une cellule
    10. proba=0.2               # probabilité d'apparition d'une mine
    11. marque="X"              # représentation de la marque à l'écran
    12.  
    13. #créer le tableau
    14. for l in range(0,nblg) :          # boucle sur chaque ligne
    15.   tableau.append([])              # ajouter une ligne au tableau
    16.   for c in range(0,nbcol) :       # boucle sur chaque colonne
    17.     if random.random() < proba :  # si nombre aléatoire < probabilité d'apparition
    18.       tableau[l].append(True)     # cocher la case
    19.     else :                        # sinon
    20.       tableau[l].append(False)    # ne pas cocher
    21.  
    22. # afficher le tableau
    23. for l in range(0,nblg) :                 # boucle sur chaque ligne
    24.   for c in range(0,nbcol) :              # boucle sur chaque colonne
    25.     if tableau[l][c] :                   # si la case est "cochée"
    26.       ecran.addch(l*haut,c*larg,marque)  # afficher (sinon rien)
    27.  
    28. ecran.getch()     # attente d'une frappe clavier
    29. curses.endwin()   # revenir à la console
Dernière modification : 25/8/2016
 Cours n°3 (Cumul=6h) : [Voir le CM n°3]
4 : semaine du lendi 9 fébrier 2009
 TD n°3 (Cumul=6h) : [Voir le TD n°3]
 Cours n°4 (Cumul=8h) : [Voir le CM n°4]
5 : semaine du lendi 16 fébrier 2009
 TD n°4 (Cumul=8h) : [Voir le TD n°4]
6 : semaine du lendi 2 môrs 2009
 TD n°5 (Cumul=10h) : [Voir le TD n°5]
7 : semaine du lendi 9 môrs 2009
 TD n°6 (Cumul=12h) : [Voir le TD n°6]
8 : semaine du lendi 16 môrs 2009
 TD n°7 (Cumul=15h) : [Voir le TD n°7]
9 : semaine du lendi 23 môrs 2009
 TD n°8 (Cumul=18h) : [Voir le TD n°8]
Dernière modification : 25/8/2016