抛硬币
用浏览器的加密随机数抛硬币:单次或一次抛 1–1000 次,可设置正面概率,统计正反面次数、百分比、最长连击与最近结果。
浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。
抛掷设置
随机数来自浏览器的 crypto.getRandomValues,并使用拒绝采样保证任意概率下都没有取模偏置。
1 – 1000
结果
设置好概率与次数后点击按钮开始抛硬币。
这个工具能做什么
- 两个人都拿不定主意时抛一次硬币决定,结果来自浏览器的加密随机数,比「我随机想的」更可信。
- 做概率演示或教学:把正面概率调成 60%,一次抛 200 次,看实际占比与设定的偏差有多大。
- 验证「连胜」这种直觉:一次抛 100 次,最长连击经常比人预想的要长,用来解释随机性很直观。
- 需要多次重复实验时用批量抛掷加统计,比真拿硬币抛一百次快得多。
示例
输入
正面概率 100%,抛掷次数 5(此时每次必为正面)
输出
总次数 5,正面 5 次、反面 0 次,正面占比 100%,最长正面连击 5、最长反面连击 0,最近结果序列 正正正正正
概率设为 0 或 100 是边界情况,工具会直接返回反面或正面,不消耗随机数;真实使用时概率通常留 50%。
常见问题
随机数是怎么来的,够随机吗?
随机源是浏览器的 crypto.getRandomValues,属于密码学安全的伪随机数。取模时会用拒绝采样丢掉会引入偏置的取值,所以即使把概率设成 33.33% 这种非整百分比,也不会出现某一面偏多的情况。
一次最多能抛多少次?
抛掷次数必须是 1 到 1000 之间的整数,超限会提示而不能提交。单次模式每次只抛一次并累加到当前统计里,批量模式会用你填的次数重新开始一组。
为什么概率设 50% 抛 10 次也可能出现 8 次正面?
概率只描述长期频率。10 次里出现 8 次正面的概率约为 4.4%,并不罕见;样本越小,偏离 50% 的波动越明显,这也是「连胜」看起来不随机的原因。想验证概率请把次数拉到几百次以上。
结果会被记录或上传吗?
不会。随机数在本地生成,统计在内存里算完就显示,页面不发任何请求;刷新页面后统计清零,不存在服务端记录。
「最近结果」为什么只显示一部分?
序列文本最多展示最近 60 次,超出的部分不显示但仍会计入统计。这样连续抛上千次时页面不会被一长串字符撑爆,占比和连击数字依然基于全部结果。
关键词:coin flipcoin tossrandomprobabilityheads or tails抛硬币掷硬币随机概率正面反面