I have tried creating a program in Python where a Monte Carlo method is used to estimate the probability of the sum of two dice being 7.

The result I get is nothing close to the theoretical probability. I just now started coding in Python, so I am struggling to locate where the mistake is. Please let me know!

```
import random
import math
def monte_carlo_estimation():
sum_seven = 1
dice_thrown = 1
prob = 0
for z in range(0, 100):
x = random.uniform(1, 6)
y = random.uniform(1, 6)
sum_wanted = x + y == 7
if sum_wanted:
sum_seven += 1
dice_thrown += 1
prob = sum_seven/dice_thrown
print("Estimate: " + str(prob))
if __name__ == '__main__':
monte_carlo_estimation()
```

### >Solution :

`random.uniform()`

returns a random floating point number. So your dice throws will have fractions, and the sums will practically never be exactly 7.

Since dice can only have integer values, you should use `random.randint(1, 6)`

instead of `random.uniform(1, 6)`

.