[水一帖] 我绕进去了, 谁来给我解释一下1/2和1/3

Deckers-avatar

Deckers

2020-11-25T03:34:34+00:00

问题: 3个球, 2个白的1个红的. 摸一次, 摸到红球放弃, 重摸. 摸到白的, 从剩下的俩球中再摸, 求摸到红球的概率 (重复1000次).

随便码了个代码摸1000次算了一下, 1/2呀, 怎么搞出1/3的? 我理解错问题了? 算上放弃才1/3, 但是放弃不能算吧, 和问题不是相违了?
用windows上带的powershell就能跑了, 打开powershell_ise.exe然后贴进去F5就行.
${红球} = 0
${白球} = 0
${放弃} = 0

$n = 0
while($n -le 1000)
{
  $n++
  # 定义箱里的球
  $s = @("白球", "白球", "红球")
  # 打乱箱里的球
  $s_ = $s | Get-Random -Count 3 -SetSeed (Get-Random)
  # 从0,1,2中取一个数
  $i = @(0, 1, 2) | Get-Random -SetSeed (Get-Random)
  if($s_[$i] -eq "红球")
  {
    # 摸到的是红球, 放弃
    ${放弃}++
    continue
  }
  
  # 摸到的是白球, 扔掉
  # 此时箱中的球剩俩, 一个白一个红
  $s_ = @("白球", "红球")
  # 打乱剩下的俩球
  $s_ = $s_ | Get-Random -Count 2 -SetSeed (Get-Random)
  # 箱里只剩俩球, 从0,1中取一个数
  $i = @(0, 1) | Get-Random -SetSeed (Get-Random)
  if($s_[$i] -eq "白球")
  {
    ${白球}++
  }
  if($s_[$i] -eq "红球")
  {
    ${红球}++
  }
}

write-host "红球: ${红球}"
write-host "白球: ${白球}"
write-host "放弃: ${放弃}"

结果跑了几次都是
红球: 339
白球: 340
放弃: 322

红球: 341
白球: 358
放弃: 302

红球: 344
白球: 340
放弃: 317
Ludociel-avatar

Ludociel

第一组算放弃概率是0.66吧
Deckers-avatar

Deckers

[quote][pid=472138620,24391979,1]Reply[/pid] Post by [uid=62534660]OXvvXO[/uid] (2020-11-29 11:46):

第一组算放弃概率是0.66吧[/quote]但是按题干放弃不应该不能算么, 除非我把问题记错了.