S405 概率實(shí)驗(yàn)難演示?(上)
在人教版五年級數(shù)學(xué)的學(xué)習(xí)中,學(xué)生第一次接觸到“概率”,到初中九年級時(shí),對機(jī)率有進(jìn)一步認(rèn)識,接觸到實(shí)驗(yàn)機(jī)率模擬的概念。但是課堂上老師可以通過讓學(xué)生“擲一擲”初步建立可能性的概念,隨著學(xué)習(xí)的推進(jìn),如何看到“可能性”的分布趨勢,需要大量的投擲才能夠?qū)崿F(xiàn)。這時(shí)候,計(jì)算機(jī)模擬就可以幫得上大忙了,趨勢也很容易觀察到。本次課程分為初階和進(jìn)階兩部分,能夠幫助我們快速模擬概率實(shí)驗(yàn),今天課程的效果圖如下:

首先進(jìn)行問題拆解,效果圖分為兩部分:一部分是左邊的實(shí)驗(yàn)?zāi)M【今天的課程內(nèi)容】,一個(gè)是右邊的結(jié)果統(tǒng)計(jì)。
我們可以先做一個(gè)均分的圓盤,讓指針在上面轉(zhuǎn)動;然后讓指針可以隨機(jī)轉(zhuǎn)動并展示結(jié)果;最后修改參數(shù),使之變?yōu)榭烧{(diào)節(jié)比例的圓盤。
本節(jié)課的關(guān)鍵理解為:
對隨機(jī)模擬實(shí)驗(yàn)要掌握哪些變量設(shè)為隨機(jī)變量,并采用哪些觀點(diǎn)來解釋隨機(jī)的結(jié)果。
你將學(xué)會:
1. 使用指令畫扇形;
2. 使用指令修改圖形顏色;
3. 設(shè)置隨機(jī)變量;
4. 定義一個(gè)序列并取用集序列內(nèi)的元素。
1 建立圓盤和指針
A. 如何畫一個(gè)六等分的圓呢?
方法一:首先,我們最直接想到的就是使用Circle指令,畫一個(gè)圓,然后把每個(gè)扇形用三個(gè)點(diǎn)連接起來。
扇形指令:CircularSector( <Midpoint>, <Point>, <Point> )【翻譯:圓扇形(圓心,點(diǎn)1,點(diǎn)2)】
這里的點(diǎn)因?yàn)樵趫A上,我們用極坐標(biāo)可能會是一個(gè)比較好的方式進(jìn)行繪制。
極坐標(biāo):(半徑;弧度)
【與點(diǎn)坐標(biāo),你發(fā)現(xiàn)極坐標(biāo)的表示有什么不同了嗎?答案見文末①】
你可以使用指令來進(jìn)行繪制嗎?【答案見文末②】
方法二:利用【序列】指令找到扇形的分割點(diǎn),連接圓心與分割點(diǎn)。
分割點(diǎn):
O=(0,0)
Ps=Sequence((1;k/6*2pi),k,1,6)
繪制扇形:
Cs1 = CircularSector( O, Ps(6), Ps(1) )
以此類推繪制其他5個(gè)扇形。
B. 設(shè)置扇形的顏色
設(shè)置顏色指令:SetColor( <Object>, "<Color>" )【翻譯:設(shè)置顏色(對象,"顏色)注意:需要以#開頭")】
【如何找到你想要的顏色編號?答案見文末③】
需要建立【按鈕】來實(shí)現(xiàn)改變顏色的操作。
【按鈕】-【設(shè)置】-【腳本】-【輸入指令SetColor】【答案見文末④】
C. 繪制指針
我們可以把指針看做是一個(gè)向量,繪制一個(gè)起點(diǎn)確定,終點(diǎn)可調(diào)節(jié)的向量即可。
向量:Vector(Point)【翻譯:向量(點(diǎn)(默認(rèn)起點(diǎn)為(0,0))】
此點(diǎn)我們依舊可以用極坐標(biāo)來表示。
spinner = 360【設(shè)置滑動條】
tip=Vector(1;(spinner/360)*2Pi)
效果如下:

2 讓指針隨機(jī)轉(zhuǎn)動并顯示答案
A. 讓指針隨機(jī)轉(zhuǎn)動
第一步中產(chǎn)生的指針可以進(jìn)行轉(zhuǎn)動了,但不是隨機(jī)的,所以我們要把指針的終點(diǎn)設(shè)置為一個(gè)隨機(jī)數(shù)即可。
區(qū)間隨機(jī)數(shù):RandomBetween( <Minimum Integer>, <Maximum Integer> )【翻譯:區(qū)間隨機(jī)數(shù)(最小數(shù),最大數(shù))】
方法一:講指針的滑動條設(shè)置為一個(gè)隨機(jī)數(shù)即可。步驟:
新建按鈕
腳本
spinner=RandomBetween(1,360)
?啟動動畫()
這樣,我們就把tip 的一個(gè)參數(shù)通過隨機(jī)數(shù)實(shí)現(xiàn)了。效果如下:

我們發(fā)現(xiàn)指針是直接跳到終點(diǎn)的,那我們可以讓他轉(zhuǎn)動嗎?那我們規(guī)定它轉(zhuǎn)動的圈數(shù)和角度可以實(shí)現(xiàn)嗎?也就是spinner需要由去圈數(shù)和轉(zhuǎn)動的角度兩個(gè)參數(shù)決定,即spinner=turn*360+end【turn-轉(zhuǎn)動的圈數(shù),end-最后一圈轉(zhuǎn)動的角度】
方法二:設(shè)置轉(zhuǎn)動的圈數(shù)和角度
新建參數(shù)turn 和 end(范圍可以自己定)
設(shè)spinner的最大值為turn*360+end【操作:
spinner-設(shè)置:
最大值為turn*360+end】
設(shè)置指針只轉(zhuǎn)一圈【設(shè)置-遞增(一次)】
效果如下:

B.顯示轉(zhuǎn)動效果
上面的隨機(jī)數(shù)中,影響顏色的因素是除去轉(zhuǎn)動的整圈數(shù),再看它轉(zhuǎn)動的度數(shù)。我們可以給每個(gè)度數(shù)的范圍(小于360的)都標(biāo)記一個(gè)顏色的名稱,計(jì)算出終點(diǎn)的所在第幾個(gè)60度,然后與標(biāo)記的顏色序列進(jìn)行掛鉤,即可知道是哪個(gè)顏色。
指令如下:
names = {"紅色", "藍(lán)色", "粉色", "綠色", "紫色", "青色"}【定義了一個(gè)序列,里面從第一個(gè)到第六個(gè)分別為6種對應(yīng)的顏色】
endAngles = Sequence(60*k, k, 1,6)【最終的角度是里面有幾個(gè)60】
resIndex = countif(x < end, endAngles) +1【上面的商+1即為取names里面第幾個(gè)顏色】
resName = names(resIndex)【顯示第k+1個(gè)顏色】
效果圖如下:

C. 顏色隨指針的轉(zhuǎn)動而動
因?yàn)槲覀?strong>最終的度數(shù),所以直接就顯示了最終的顏色,那我們可以把最終的度數(shù)換成正在改變的度數(shù)也就是“spinner”,因?yàn)閟pinner可能是大于1圈的,那么我們就去和360的余數(shù)作為求解顏色的角度,用到指令求余數(shù):
求余數(shù):Mod( <Dividend Number>, <Divisor Number> )【翻譯:取余(被除數(shù),除數(shù))】
如何修改B中的指令呢?【答案見文末⑤】
效果圖如下:

3 調(diào)整圓盤比例
A. 建立6個(gè)滑動條
六個(gè)分別用于調(diào)整每一塊的比例。讓 s1, s2 的范圍是 1~6,s3~s6 的范圍是 0~6。
B. ?先將六個(gè)滑桿并為一個(gè)序列 ss,要計(jì)算各顏色比例,先求綜合,再計(jì)算 ps 。
ss = {s1,s2,s3,s4,s5,s6}【把六個(gè)數(shù)放在了一個(gè)叫ss的數(shù)列中】
total = sum(ss)【求六個(gè)數(shù)的和】
ps = sequence(ss(k)/total, k,1,6)【分別計(jì)算每一部分所占的比例】
C. 找到每個(gè)扇形的兩個(gè)點(diǎn)
接著要將扇形的端點(diǎn)作分割,等于要計(jì)算每個(gè)扇形的終點(diǎn)位置。【思考:如果直接用ps中的六個(gè)數(shù)會怎么樣】【答案見文末⑥】
sps=Sequence((sum(ps,k),k,1,6))
D. 修正Ps
Ps=Sequence((1;k/6*2π),k,1,6)【中的k/6替換為:sps(k)】
endAngles = Sequence(60*k,k,1,6)【中的60*k替換為360*sps(k)】

一個(gè)隨機(jī)模擬的演示實(shí)驗(yàn)就做完了,老師還可以把它作為課上“隨機(jī)”點(diǎn)名的工具,是不是特別刺激?你可以做哪些修改,讓一些同學(xué)被點(diǎn)名的概率變大嗎?
答案區(qū)
① 中間使用“;”進(jìn)行連接,這樣計(jì)算機(jī)才可以識別是極坐標(biāo)哦~
②? O=(0,0)
Cs=Sequence(CircularSector(O,(1;(k/6)*2Pi),(1;((k+1)/6)*2Pi)),k,0,5)
③ 選擇任意一個(gè)對象-【設(shè)置】-【顏色】就可以看到對應(yīng)顏色的編碼了

④? ?方法一的圖形設(shè)置顏色
你會發(fā)現(xiàn)沒有辦法設(shè)置顏色,GGB里面只能是一個(gè)序列一個(gè)顏色,所以這里無解了~你可以試一試還有什么方法嗎?
方法二的圖形設(shè)置顏色
SetColor(Cs1,"#FF0000")
SetColor(Cs2,"#0000FF")
SetColor(Cs3,"#FF0088")
SetColor(Cs4,"#008800")
SetColor(Cs5,"#8800FF")
SetColor(Cs6,"#0088FF")
⑤? 把end 替換為Mod(spinner,360)
⑥ 可以嘗試一下,出現(xiàn)的效果是每個(gè)扇形的起點(diǎn)都一樣,就沒有辦法組成一個(gè)圓。
小結(jié)
在這部分我們先實(shí)踐,機(jī)率轉(zhuǎn)盤模擬的前半段。制造一個(gè)隨機(jī)事件(在圓盤轉(zhuǎn)動的圈數(shù)與角度),并解讀他的結(jié)果(判斷停留點(diǎn)位在那個(gè)區(qū)域)。核心概念就在于產(chǎn)生隨機(jī)性與解讀隨機(jī)性。
當(dāng)然這只是單次的結(jié)果,不容易做些分析,在這后續(xù)的進(jìn)階視頻我們將要來分析每次的結(jié)果,并用統(tǒng)治圖表讓他可以清楚地顯示。
挑戰(zhàn)
有些隨機(jī)轉(zhuǎn)盤是,指針一直朝上,但讓著色的圓盤會轉(zhuǎn)動。如果是要實(shí)踐這樣的結(jié)果,那你覺得課件該如何設(shè)計(jì)呢?
另外,關(guān)于隨機(jī)性的課件,目前也有兩篇相關(guān)的介紹,一個(gè)是利用隨機(jī)出題來實(shí)現(xiàn)自動大量出題。另一個(gè)是硬幣的正反面模擬統(tǒng)計(jì)。大家可以試著只看結(jié)果圖,來思考如何拆解制作。思考后,自己動手卡住時(shí)再看視頻解說。
平方數(shù)自動出題

丟銅板機(jī)率模擬:

相關(guān)資料
【GGB】https://www.geogebra.org/classic/nbq6vbaq
【Bili】https://www.bilibili.com/video/av75148091
人教版九上 25 章《體驗(yàn)用頻率估計(jì)概率》