第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

找出硬幣條紋的百分比

找出硬幣條紋的百分比

米琪卡哇伊 2022-07-26 10:41:20
我正在嘗試編寫一個(gè)程序,以找出在隨機(jī)生成的 100 次翻轉(zhuǎn)的正面和反面列表中出現(xiàn)六個(gè)正面或六個(gè)反面的條紋的頻率,并重復(fù)此 10000 次以查找硬幣翻轉(zhuǎn)的百分比連續(xù)包含六個(gè)正面或反面。我的代碼是這樣的,它是某種工作。**我想知道它是否給出了正確的結(jié)果:**import randomnumberOfStreaks = 0# Code that creates a list of 100 'heads' or 'tails' values.for experimentNumber in range(10000):    results = []    for experiment in range(100):        x = random.randint(1, 2)        if x == 1:            results.append('H')        else:            results.append('T')    # Code that checks if there is a streak of 6 heads or tails in a row.    currentStreak = 0    previousResult = results[0]    for result in results:        if currentStreak == 6:            numberOfStreaks += 1            currentStreak = 0        if result == previousResult:            currentStreak += 1            previousResult = resultprint('Chance of streak: %s%%' % (numberOfStreaks / 100))
查看完整描述

3 回答

?
holdtom

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超10個(gè)贊

當(dāng)您獲得第 7 次正面或反面重復(fù)時(shí),應(yīng)將其計(jì)為連續(xù),因?yàn)樽詈?6 次翻轉(zhuǎn)確實(shí)形成了連續(xù)。通過(guò)在 6 之后重置計(jì)數(shù),您低估了條紋的數(shù)量。


從概率的角度來(lái)看,您打印的結(jié)果不是“機(jī)會(huì)”的度量(永遠(yuǎn)不會(huì)超過(guò) 100%),而是更接近數(shù)學(xué)期望(即期望值的總和乘以它們各自的概率)。您的代碼會(huì)生成實(shí)際嘗試的樣本,但計(jì)算沒(méi)有意義,除非它們可以與適當(dāng)?shù)母怕蕯?shù)字進(jìn)行比較。


以下是我將如何實(shí)現(xiàn)此采樣并表達(dá)結(jié)果:


import random

from itertools import accumulate

expCount   = 10000

expSize    = 100

streakSize = 6


numberOfStreaks = 0

for experimentNumber in range(expCount):

    results = [random.choice("HT") for _ in range(expSize)]

    consec  = [int(a==b) for a,b in zip(results,results[1:])]

    streaks = sum( s+1>=streakSize for s in accumulate(consec,lambda s,m:s*m+m))

    numberOfStreaks += streaks


ratio = numberOfStreaks / expCount

print(f'Obtained {numberOfStreaks} streaks of {streakSize} head/tail on {expCount} runs of {expSize} flips. On average {ratio:.2f} streaks per run')



查看完整回答
反對(duì) 回復(fù) 2022-07-26
?
慕慕森

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超17個(gè)贊

import random

numberOfStreaks = 0

numberOfExperiments = 10000

numberOfAttemps = 100

for experimentNumber in range(numberOfExperiments):

# Code that creates a list of {numberOfAttemps} 'heads' or 'tails' values.

    coinFlip = []

    for i in range(numberOfAttemps):

            if random.randint(0, 1) == 0:

                coinFlip.append("H")

            else:

                coinFlip.append("T")

# Code that checks if there is a streak of 6 heads or tails in a row.

    for i in range(len(coinFlip)):

        if (["H"] * 6) in [coinFlip[i:i+6]] or (["T"] * 6) in [coinFlip[i:i+6]]:

            numberOfStreaks += 1

            for n in range(5):

                coinFlip.pop(i)

print('Chance of streak: %s%%' % (numberOfStreaks / numberOfExperiments))

輸出:


Chance of streak: 1.5143%


查看完整回答
反對(duì) 回復(fù) 2022-07-26
?
嚕嚕噠

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超7個(gè)贊

import random, time

numberOfStreaks = 0

for experimentNumber in range(10000):

    # Code that creates a list of 100 'heads' or 'tails' values.

    List = []

    for value in range(100):

        value = random.randint(0,1)

        if value == 0:

            List.append('H')

        if value == 1:

            List.append('T')

    # print('List = ', end=' ')

    # print(List)

    # Code that checks if there is a streak of 6 heads or tails in a row.

    sixStreakHeads = 0

    sixStreakTails = 0

    for result in range(len(List)):

        if List[result] == 'H':

            sixStreakHeads += 1

            sixStreakTails = 0

            if sixStreakHeads == 6:

                sixStreakHeads = 0

                numberOfStreaks += 1

        if List[result] == 'T':

            sixStreakTails += 1

            sixStreakHeads = 0

            if sixStreakTails == 6:

                sixStreakTails = 0

                numberOfStreaks += 1

    # print('Six Streak Heads: ', sixStreakHeads)

    # print('Six Streak Tails: ', sixStreakTails)

    # time.sleep(.5)

    # print('\n\n\n')

print('Chance of streak: ', numberOfStreaks / 10000 * 100, '%')


查看完整回答
反對(duì) 回復(fù) 2022-07-26
  • 3 回答
  • 0 關(guān)注
  • 149 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)