Intro to
Programming
with Python

Fall 2012
course
navigation

Oct 11

old business

Homework grading is up to date. Perhaps look at a few more in class?
Assignment for midterm project is posted. Please do email me if questions come up as you're working on 'em.

new business

Chapter 9 : "simulation and design"
Discusses "top-down", "bottom-up", and "spiral" (which is a bit of both) program design techniques.
The text does this with a racquetball simulation.
I'd like to do something similar as a class exercise, but with a problem that I like a bit better: craps.
As the book describes, we'll use a random number function to implement the dice : def d6(): """Return a random integer from 1 to 6 inclusive.""" from random import randrange return randrange(1,7)
(Before going on, test this manually. Can the test be automated?)
The program I have in mind looks like this when it runs :
$ python craps.py --- Estimated odds of winning at craps --- How many games would you like to simulate? 100 Simulating 100 games ... done. Number of simulated wins: 38 Estimated odds of winning: 0.381 --- Estimated error --- How many times would you like to repeat that series of 100 games? 10 Simulating 10 sets of 100 games ... done. Lowest estimated odds : 0.363 Highest estimated odds: 0.387 Error range = (high-low) = 0.024
And what I'd like us to investigate are several things, besides just the programming itself:
The rules of craps are described here: http://en.wikipedia.org/wiki/Craps
I've attached a copy of this program from a previous iteration of this class.
The craps program we did in class is attached, too.
http://cs.marlboro.edu/ courses/ fall2012/python/ notes/ Oct_11
last modified Monday October 15 2012 12:44 pm EDT

attachments [paper clip]

     name last modified size
   craps_2010.py Oct 11 2012 1:03 am 2.48kB    craps_2012.py Oct 15 2012 12:44 pm 2.85kB