This page uses the familiar darts game ‘501’ to motivate a typical Visual Basic program. The program has established eighteen distinct nine-dart fishes to the game, which must end by scoring a double or throwing a ‘bullseye’ (50).

Distinct nine-dart finishes to the game '501':

60 60 60 60 60 60 60 57 24
60 60 60 60 60 60 60 51 30
60 60 60 60 60 60 60 45 36
60 60 60 60 60 60 57 54 30
60 60 60 60 60 60 57 50 34
60 60 60 60 60 60 57 48 36
60 60 60 60 60 60 54 51 36
60 60 60 60 60 60 51 50 40
60 60 60 60 60 57 57 57 30
60 60 60 60 60 57 57 51 36
60 60 60 60 60 57 54 54 36
60 60 60 60 60 57 54 50 40
60 60 60 60 60 51 50 50 50
60 60 60 60 57 57 57 54 36
60 60 60 60 57 57 57 50 40
60 60 60 60 57 54 50 50 50
60 60 60 57 57 57 57 57 36
60 60 60 57 57 57 50 50 50

Total 18 finishes.

The program has been run for thirty minutes on a 2.5 GHz machine, and no thought has been given to the possibility of any additional finishes, or to the likelihood of speeding up the program. The program is currently in Excel format and is in two versions.Darts501f.xls runs through the permutations whereas Darts501g.xls displays just the distinct combinations. Do experiment with these!