双色球中奖概率(你知道双色球和大乐透中奖概率吗)

定义阶乘算法

# 阶乘算法
def factorial(n: int)->int:

   sum = 1

   for i in range(1, n + 1):
       # 连续计算乘法
       sum *= i

   return sum

定义排列算法

# 排列算法

# 排列的定义:从n个不同元素中,任取m(m≤n,m与n均为自然数,下同)个不同的元素按照一定的顺序排成一列,叫做从n个不同元素中取出m个元素的一个排列;从n个不同元素中取出m(m≤n)个元素的所有排列的个数,叫做从n个不同元素中取出m个元素的排列数
def factorial_Amn(m: int, n: int) ->int:

   if m <= n:
       return factorial(n) / factorial(n - m)
   else:
       pass

定义组合算法


# 组合算法

# 组合的定义:从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个不同元素中取出m个元素的一个组合;从n个不同元素中取出m(m≤n)个元素的所有组合的个数,叫做从n个不同元素中取出m个元素的组合数。用符号 C(n,m) 表示。
def factorial_Cmn(m: int, n: int) ->int:
   if m <= n:
       return factorial_Amn(m, n) / factorial(m)
   else:
       pass

双色球有多少种可能

# 双色球所有可能组合数量为?

# 红球可能组合数
redbolls = factorial_Cmn(6, 33)
# 蓝球可能组合数
bluebolls = factorial_Cmn(1, 16)

# 合计组合数

print("双色球所有可能组合数量为: {:,} 种可能".format(redbolls * bluebolls))

结果

双色球所有可能组合数量为: 17,721,088.0 种可能

双色球全部购买要花多少钱

print("双色球全部购买所需要花费: {:,} 元".format(redbolls * bluebolls * 2))

总花费金额

双色球全部购买所需要花费: 35,442,176.0 元

双色球中奖概率是多少

print("双色球购买1注中奖概率为: {:.10%}".format(1 / (redbolls * bluebolls)))

单注中奖概率

双色球购买1注中奖概率为: 0.0000056430%

这跟0没什么区别…….

大乐透有多少种可能


# 大乐透所有可能组合数量为?
print()
# 前区可能组合数
frontbolls = factorial_Cmn(5, 35)
# 后区可能组合数
lastbolls = factorial_Cmn(2, 12)

# 合计组合数

print("大乐透所有可能组合数量为: {:,} 种可能".format(frontbolls * lastbolls))

结果

大乐透所有可能组合数量为: 21,425,712.0 种可能

大乐透全部购买要花多少钱

print("大乐透全部购买需要花费: {:,}元".format(frontbolls * lastbolls * 2))

总花费金额

大乐透全部购买需要花费: 42,851,424.0元

大乐透中奖概率是多少

print("大乐透购买1注中奖概率为: {:.10%}".format(1 / (frontbolls * lastbolls)))

单注中奖概率

大乐透购买1注中奖概率为: 0.0000046673%

….这结果, 还不如买双色球去….更有希望

完整代码


# 阶乘算法
def factorial(n: int)->int:

   sum = 1

   for i in range(1, n + 1):
       # 连续计算乘法
       sum *= i

   return sum

# 排列算法

# 排列的定义:从n个不同元素中,任取m(m≤n,m与n均为自然数,下同)个不同的元素按照一定的顺序排成一列,叫做从n个不同元素中取出m个元素的一个排列;从n个不同元素中取出m(m≤n)个元素的所有排列的个数,叫做从n个不同元素中取出m个元素的排列数用符号 A(n,m)


def factorial_Amn(m: int, n: int) ->int:

   if m <= n:
       return factorial(n) / factorial(n - m)
   else:
       pass

# 组合算法

# 组合的定义:从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个不同元素中取出m个元素的一个组合;从n个不同元素中取出m(m≤n)个元素的所有组合的个数,叫做从n个不同元素中取出m个元素的组合数。用符号 C(n,m) 表示。
def factorial_Cmn(m: int, n: int) ->int:
   if m <= n:
       return factorial_Amn(m, n) / factorial(m)
   else:
       pass


# 双色球所有可能组合数量为?

# 红球可能组合数
redbolls = factorial_Cmn(6, 33)
# 蓝球可能组合数
bluebolls = factorial_Cmn(1, 16)

# 合计组合数

print("双色球所有可能组合数量为: {:,} 种可能".format(redbolls * bluebolls))

print("双色球全部购买所需要花费: {:,} 元".format(redbolls * bluebolls * 2))

print("双色球购买1注中奖概率为: {:.10%}".format(1 / (redbolls * bluebolls)))

# 大乐透所有可能组合数量为?
print()
# 前区可能组合数
frontbolls = factorial_Cmn(5, 35)
# 后区可能组合数
lastbolls = factorial_Cmn(2, 12)

# 合计组合数

print("大乐透所有可能组合数量为: {:,} 种可能".format(frontbolls * lastbolls))


print("大乐透全部购买需要花费: {:,}元".format(frontbolls * lastbolls * 2))


print("大乐透购买1注中奖概率为: {:.10%}".format(1 / (frontbolls * lastbolls)))

汇总结果

双色球所有可能组合数量为: 17,721,088.0 种可能
双色球全部购买所需要花费: 35,442,176.0 元
双色球购买1注中奖概率为: 0.0000056430%

大乐透所有可能组合数量为: 21,425,712.0 种可能
大乐透全部购买需要花费: 42,851,424.0元
大乐透购买1注中奖概率为: 0.0000046673%
(0)

相关推荐