
4T              	   @   s(  d  d l  Z  d  d l Z d Z d Z e  j   d d   Z d d   Z d d	   Z d
 d   Z d d   Z	 d d   Z
 d d   Z d d   Z d d   Z d d   Z d d   Z d d   Z d d   Z d d   Z e
 e e e e e e e e g	 Z d  d! d" d# d$ d% d& d' d( g	 Z d) d*   Z d S)+    Nd      c               C   s   t  j d t d  S)Nr      )randomrandintSIDES r   r   L/Users/agroce/Documents/Dropbox/Reed/math121/Projects/Project1/pr1testing.pyroll   s    r
   c       	      C   sf  d } d } d } x	|  | | |  } d } | } x- | d k rb t    } | | 7} | d } q6 W| | 7} | t k s | r Pn  | d k r d } n  | | | |  } d } | } x- | d k r t    } | | 7} | d } q W| | 7} | t k s| rPn  | d k r d } q q | t k r.d S| t k r>d S| | k rNd S| | k r^d Sd Sd  S)Nr   Fr   T      )r
   TARGET)	strat1strat2score1score2lastnumDice	diceTotalidr   r   r	   autoplay
   sJ    	

		

r   c             C   s  d } d } d } | } xi | | d k r t  |  |  } | d k rS | d 7} n# | d k rl | d 7} n
 | d 7} | d 8} q Wxe | d k r t  | |   } | d k r | d 7} n# | d k r | d 7} n
 | d 7} | d 8} q Wt d |  t d |  t d |  d  S)Nr   r   r   zPlayer 1 wins: zPlayer 2 wins: zTies:          )r   print)r   r   nwins1wins2tiesstartresultr   r   r	   	manyGames7   s.    

r   c       	      C   s2  d } d } d } x | d k r t  |  |  } | d k rI | d 7} n# | d k rb | d 7} n
 | d 7} | d 8} t  | |   } | d k r | d 7} n# | d k r | d 7} n
 | d 7} | d 8} q Wt | d |  t | d |  t | d  | | k rt | d  n t | d  t   d  S)Nr   r   r   z: z:  Tiesz wins!)r   r   )	r   r   Zname1Zname2r   r   r   r   r   r   r   r	   oneSampleAlternatingR   s2    


r    c             C   sK   d } x> | t  |  k  rF t |  | | d | | |  | d } q	 Wd  S)Nr   zYour strategyr   )lenr    )ZstrategyZ	stratListZnameListr   r   r   r   r	   testAgainstListp   s    r"   c             C   s   d S)N   r   )myscore
theirscorer   r   r   r	   test1x   s    r&   c             C   s   |  d k r d Sd Sd  S)NU   r   r   r   )r$   r%   r   r   r   r	   test2|   s    r(   c             C   s   |  d k r d Sd Sd  S)NP   r   
   r   )r$   r%   r   r   r   r	   test3   s    r+   c             C   s   t  |  t d S)Nr   )r   r   )r$   r%   r   r   r   r	   test4   s    r,   c             C   s?   |  d k r |  | k r d Sd |  d } t  j | d  Sd  S)Nr'   r   r   g      @g?)mathfloor)r$   r%   r   xr   r   r	   test5   s    r0   c             C   s  | r |  | k r d S| rE | d d } t  j | |  d  } | S|  d k rU d S|  d d } t  j | d  } d } t  j | |  } |  | k r d | | d k  r d St  j d |  d	  }	 d |  |	 d d t  j | |	 d  }
 xE |
 d
 k r<|	 d 7}	 d |  |	 d d t  j | |	 d  }
 q Wd } |  | k  rw| d d } t  j | |  d  } n  t |	 |  S)Nr   r   r   g      @r   r      g?r#   gffffff?$   #   gUUUUUU@)r-   r.   sqrtmax)r$   r%   r   target
losingRolltheirTarget	theirDicevariance
theirSigmawinningRollsigmaToOverr   r   r	   test6   s0     +
/r>   c             C   s   d |  } d | } | | } | d k  r. d S| d k rW | d k rW t  j | d  S| d
 k  r | d k  r t  j | d  S| d k  r t  j | d  St  j | d	  Sd  S)Nr   r#   r      (   g      @      r   )r-   r.   )r$   r%   r   mydiff	theirdiffdiffdiffr   r   r	   test7   s    


rG   c             C   s   | r |  | k r d Sd |  } d | } |  | } |  d k rP |  | k rP d S| d k ry |  d k  ry t  j | d  S| d k  r |  d k r t  j | d  S|  d	 k r t  j | d
  St  j | d  Sd  S)Nr   r   _   r?   <   g      @r#   r)   F   rB   r   rC   )r-   r.   )r$   r%   r   rD   rE   rF   r   r   r	   test8   s    


rK   c             C   s  | r |  | k r d S| rE | d d } t  j | |  d  } | S|  d k rU d S|  d d } t  j | d  } d } t  j | |  } |  | k r d | | d k  r d St  j d |  d	  }	 d |  |	 d d t  j | |	 d  }
 xE |
 d
 k r<|	 d 7}	 d |  |	 d d t  j | |	 d  }
 q Wd } |  | k  rw| d d } t  j | |  d  } n  t |	 |  S)Nr   r   r   g      @r   r   r1   g
ףp=
?r#   g?r2   r3   gUUUUUU@)r-   r.   r4   r5   )r$   r%   r   r6   r7   r8   r9   r:   r;   r<   r=   r   r   r	   test9   s0     +
/rL   zTest 1zTest 2zTest 3zTest 4zTest 5zTest 6zTest 7zTest 8zTest 9c             C   s   t  |  t t d  d  S)Ni'  )r"   testsnames)Zstratr   r   r   r	   	testStrat   s    rO   )r   r-   r   r   seedr
   r   r   r    r"   r&   r(   r+   r,   r0   r>   rG   rK   rL   rM   rN   rO   r   r   r   r	   <module>   s*   
-!!