心妍 发表于 2024-5-7 23:47:17

概率模拟

本帖最后由 心妍 于 2024-5-7 23:48 编辑

突发奇想弄的一个东东 功能是通过生成n次随机数来达到跟期望的数字相等 并输出概率
import random

for i in range(101):

    count = 1
    random_1 = random.randint(0,i+1)

    while i != random_1:
      random_1 = random.randint(0,i+1)
      count += 1

    else:
      percentage = (1 / count) * 100
      print('[%d 循环%d次得到该数字 概率为%.2f%%]' % (i,count,percentage))



将代码改改 功能发生了改变 下面的代码作用是 测试随机数与随机数碰撞成功的概率
import random

for i in range(1,101):

    count = 1
    random_1 = random.randint(0,101)
    random_2 = random.randint(0,101)

    while random_1 != random_2:
      random_2 = random.randint(0,101)
      count += 1

    else:
      percentage = (1 / count) * 100
      print('[第%d次碰撞 碰撞%d次得到该数字 概率为%.2f%%]' % (i,count,percentage))


随机和循环很有意思 哈哈



心妍 发表于 2024-5-8 20:21:31

lvkeqin 发表于 2024-5-8 18:44
这不就是彩票吗

程序比彩票更公平

乐活 发表于 2024-5-8 09:26:30

Python写这种程序相对还是容易一些的

心妍 发表于 2024-5-8 11:53:58

乐活 发表于 2024-5-8 09:26
Python写这种程序相对还是容易一些的

只会一点python

lvkeqin 发表于 2024-5-8 18:44:27

这不就是彩票吗{:lol:}

qqpoly 发表于 2024-5-10 17:31:38

心妍 发表于 2024-5-8 20:21
程序比彩票更公平

你说得对!看到的这么清晰
页: [1]
查看完整版本: 概率模拟