³ò
qËMKc           @   s¬  d  d k  Z  d  d k Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z e d „ Z	 d	 „  Z
 d
 „  Z e i ƒ  Z e i d ƒ e i e ƒ e i e ƒ e i ƒ  e i d e i e i ƒ e i d ƒ e i Z e i d e i e i ƒ e i d ƒ e i Z d \ Z Z Z Z e ƒ  \ a a e  d ƒ e  d ƒ g Z! g  a" g  a# d Z$ d Z% d a& e ƒ  e ƒ  d Z' x, e' e! j o e	 ƒ  e ƒ  e i( ƒ  Z' quWe ƒ  d S(   iÿÿÿÿNc          C   s9   t  i ƒ  \ }  } |  t t | t t }  } |  | f S(   N(   t   ecrant   getmaxyxt   hautt   bast   gauchet   droite(   t   nblgnt   nbcol(    (    s   vie05.pyt   tailleecran   s    c          C   sF   x? t  d t ƒ D]. }  t i t g t ƒ t i t g t ƒ q Wd  S(   Ni    (   t   rangeR   t   tableaut   appendt   videR   t	   prochaine(   t   l(    (    s   vie05.pyt   creation   s     c          C   sw   t  i  ƒ  }  xd t d t ƒ D]S } xJ t d t ƒ D]9 } t  i  ƒ  |  j  o t t | | <q2 t t | | <q2 Wq Wd  S(   Ni    (   t   randomR	   R   R   R   R
   t   plein(   t
   proportionR   t   c(    (    s   vie05.pyt   remplissage_aleatoire   s      c          C   so  d \ }  } d } xV| t  d ƒ j oB| t i j o | t j  o | d 7} nÎ | t i j o | d j o | d 8} n£ | t i j o |  d j o |  d 8}  nx | t i j o |  t j  o |  d 7}  nM | t  d ƒ j o9 t |  | t	 j o t
 t |  | <q t	 t |  | <n t i ƒ  t t ƒ t i |  t | t t |  | t ƒ t i ƒ  } q Wd  S(   Ni   i    t   qt    (   i   i   (   t   ordt   cursest	   KEY_RIGHTR   t   KEY_LEFTt   KEY_UPt   KEY_DOWNR   R
   R   R   R    t   cleart	   affichaget   Truet   addchR   R   t   INVERSEt   getch(   t   lignet   colonnet	   unetouche(    (    s   vie05.pyt   remplissage_dessine!   s(     

&c          C   s  t  d ƒ g }  d d g } d	 \ } } t i | d | d ƒ d } xH t d t | ƒ ƒ D]1 } t | | ƒ | j o t | | ƒ } qZ qZ WxL t d t | ƒ ƒ D]5 } x, t | | ƒ | j  o | | c d 7<q® Wq¥ Wd } d } xó | |  j oå | t i j o | d t | ƒ } n) | t i j o | d t | ƒ } n x‚ t d t | ƒ ƒ D]k } | | j o. t i | | | d d | | d t ƒ q`t i | | | d d | | d t	 ƒ q`Wt i
 ƒ  } qí W| d j o t ƒ  n | d j o t ƒ  n d  S(
   NR   t   hasards   dessin de la configurationi   i   s/   Faites votre choix, puis appuyez sur "espace" :i    i   (   i   i   (   R   R    t   addstrR	   t   lenR   R   R   R!   t   NORMALR"   R   R&   (   t   choisirt   listet   l0t   c0R   t   it   choixt   k(    (    s   vie05.pyt   remplissage:   s@         ..c          C   sê   x t  d t ƒ D]~ }  xu t  d t ƒ D]d } t |  | ƒ } | d j o t |  | t j p | d j o t t |  | <q& t t |  | <q& Wq WxG t  d t ƒ D]6 }  x- t  d t ƒ D] } t |  | t |  | <q¸ Wq¢ Wt d 7a d  S(   Ni    i   i   i   (	   R	   R   R   t   voisinsR
   R   R   R   t   generations(   R   R   t   n(    (    s   vie05.pyt
   generation^   s      /  c   	      C   sY  t  t } } t ƒ  \ a  a | | f t  t f j oxG t d | ƒ D]6 } x- t d | ƒ D] } t | | t | | <q[ WqE Wg  a x+ t d t  ƒ D] } t i t g t ƒ q• WxY t d t t  | ƒ ƒ D]? } x6 t d t t | ƒ ƒ D] } t | | t | | <që WqÌ Wg  a x+ t d t  ƒ D] } t i t g t ƒ q%Wt	 i
 ƒ  n xT t d t  ƒ D]C } x: t d t ƒ D]) } t	 i | t | t t | | ƒ qwWqaW|  o
 d } n t t ƒ d } t	 i t  t t | ƒ t	 i t t ƒ d t t  ƒ ƒ d } d } x0 t D]( } | | d t | ƒ d } d } qWt	 i d	 | d
 ƒ d  S(   Ni    s:   DÃ©placements avec le curseur. SÃ©lectionner avec espace. s   Â° gÃ©nÃ©ration. t   xt    s   Â« s    Â»s    ou s   . Pour sortir, appuyer sur t   .(   R   R   R   R	   R
   R   R   R   t   minR    R   R(   R   R   t   strR4   t   sortiet   chr(	   R   t   exnblgnt   exnbcolR   R   t   debutmessaget   out   sortirR   (    (    s   vie05.pyR   o   sN            +
! 
c   	      C   s  |  d |  d | d | d f \ } } } } | d j  o t  d } n | t  j o
 d } n | d j  o t d } n | t j o
 d } n d } xn | |  | g D]] } xT | | | g D]C } | |  j p | | j o# t | | t j o | d 7} q¾ q¾ Wq¨ W| S(   Ni   i    (   R   R   R
   R   (	   R   R   t   lavantt   laprest   cavantt   caprest   nbret   llt   cc(    (    s   vie05.pyR3   —   s"    .  
  
  /c           C   s   t  i ƒ  d  S(   N(   R   t   endwin(    (    (    s   vie05.pyt   finir§   s    i   i   R   t   Qt   *R   i    (   i   i   i   i   ()   R   R   R   R   R   R&   R2   R6   t   FalseR   R3   RK   t   initscrR    t   nodelayt   curs_sett   keypadR   t   start_colort	   init_pairt   COLOR_WHITEt   COLOR_BLACKt
   color_pairt   A_BOLDR*   R!   R   R   R   R   R   R   R   R<   R
   R   R   R   R4   R1   R"   (    (    (    s   vie05.pys   <module>   sF   					$	(		
 