Skip to Content
 

Number of times one die will win against another

5 replies [Last post]
chlaforce
Offline
Joined: 02/07/2013

Hey guys, I was just wondering whether there was an easy way to figure out how many times a d10 would be higher then a d8 roll, or a d8 vs 86.

For example, if I rolled a d8 10 times, and a d10 10 times, how many times would the d10 win?

Thanks!

NomadArtisan
Offline
Joined: 12/12/2011
Here's the easy way to figure

Here's the easy way to figure it out.
If one player rolls a d8 and the other player rolls a d10, there are 8x10 possible outcomes.
The d8 is the lower number of two dice, so I'll use it to show how to determine number of times 10 will win
if the d8 rolls-d10 wins on...
1- 2, 3, 4, 5, 6, 7, 8, 9, 10
2- 3, 4, 5, 6, 7, 8, 9, 10
3- 4, 5, 6, 7, 8, 9, 10
4- 5, 6, 7, 8, 9, 10
5- 6, 7, 8, 9, 10
6- 7, 8, 9, 10
7- 8, 9, 10
8- 9, 10

So if you count up all the possible results that make the d10 win on the right side of that chart, you get 9+8+7+6+5+4+3+2= 44

44/80=.55

so the d10 will beat the d8 55% of the time.

chlaforce
Offline
Joined: 02/07/2013
thanks!

That's a lot of help, thanks =)

NomadArtisan
Offline
Joined: 12/12/2011
No problem :)

No problem :)

UnnumberedT
Offline
Joined: 01/17/2013
you can do this speedily with spreadsheets

NomadArtisan's got a good solution. I wanted to further point out that you can do this with spreadsheets, so that if you have other questions like this, you could semi-automate the process, and speed it up.

For example, in Excel:
Open a new spreadsheet
In the top row, list all possible values of a d10: 1, 2, 3, .... 10. These are column labels.
In the first column, list all possible values of a d8: 1, 2, 3, ... 8. These are row labels.
Then in the middle, use a formula like "{value of number in corresponding column label} > {value of number in corresponding row label}"
The middle will then be filled with a bunch of true's and false's. You'll have 80 boxes in the middle, and the number of times a d10 would be higher than a d8 would be #trues / (#trues + #falses).

If you want to message me with your email, I could send you an Excel sheet with that particular example, and you could use it as a starting point for answering other questions.

pelle
pelle's picture
Offline
Joined: 08/11/2008
scripting

A shorter solution is to paste this in a text file and run with python:
print sum([10-x for x in range(1, 9)])/80.0*100

I also have a (unfortunately still unreleased) dice probability module for python I wrote a few years ago that can be used to solve this a bit easier:
print die(10).p_gt_other(die(8))

Syndicate content


forum | by Dr. Radut