pygal模擬擲骰子
本次練習是通過python的pygal來模擬擲骰子的結果。我先創造了一個骰子類(Die),這個類的骰子都有6個面,點數分別是1~6。然後由這個類建立兩個例項die1和die2。模擬的是隨機投擲這兩個篩子n次,輸出這n次的投擲結果。為了方便分析,我輸出了這n(n=1000)次投擲中,不同點數出現的次數,並繪製了條形圖。具體程式碼如下:
import matplotlib.pyplot as plt import pygal from random import randint #建立Die骰子類 class Die(): def __init__(self,num_sides=6): self.num_sides=num_sides def roll(self): return randint(1,self.num_sides) #建立例項 die1=Die() die2=Die() result=[] #將每次投擲的點數和儲存在列表frequences中 for n in range(1000): a=die1.roll()+die2.roll() result.append(a) frequences=[] #統計各個點數和出現的次數並繪圖 for value in range(2,die1.num_sides+die2.num_sides+2): frequency=result.count(value) frequences.append(frequency) #print("%d : %d"%(value,frequency)) print(frequences) hist=pygal.Bar() hist.title="Result of rolling one D6 1000 times" hist.x_labels=['2','3','4','5','6','7','8','9','10','11','12'] hist.x_title="Result" hist.y_title="Frequency of result" hist.add('D6',frequences) hist.render_to_file('die_visual.svg')
輸出如下(截圖):
輸出的圖片為svg格式,當滑鼠指向某一點數時,會顯示出該點數出現的次數。由上圖發現,當同時投擲兩個6面篩子,各點數出現的次數符合正態分佈。這一分佈也符合數學邏輯。投擲一次所有可能出現的結果如下:
由上圖可以看出共有11中結果,不同結果出現的次數是不一樣的。所以各點數和出現的概率為:
各個點數出現的概率也服從正態分佈,結果和投擲1000次的結果吻合。
相關推薦
pygal模擬擲骰子
本次練習是通過python的pygal來模擬擲骰子的結果。我先創造了一個骰子類(Die),這個類的骰子都有6個面,點數分別是1~6。然後由這個類建立兩個例項die1和die2。模擬的是隨機投擲這兩個篩子n次,輸出這n次的投擲結果。為了方便分析,我輸出了這n(n=100
python視覺化——使用pygal模擬擲骰子
#die.py # coding=gbk from random import randint class Die(): """表示一個骰子的類""" def __init__(sel
Python3——資料視覺化模組Pygal與模擬擲骰子
Pygal:Python視覺化包,生成可縮放的向量圖形檔案 Pygal安裝 PyCharm新增Pygal庫 模擬擲骰子 die.py from random imp
FPGA模擬擲骰子
設計效果 每按同一個按鍵時會隨機得到一個1—6中的一個隨機數字,並用數碼管顯示得到的數值。對兩次按鍵得到的數值進行比較,若前者大,則最低兩位LED顯示為“亮”、“滅”,後者較大,則最後兩位LED顯示狀態改為“滅”、“亮”。設計方案 本次課程設計的實質是
模擬擲骰子
以下程式碼能夠計算每種兩個骰子之和的準確概率分佈: int SIDES = 6; double[] dist = new double[2 * SIDES + 1]; for (int i = 1;
python應用-擲骰子模擬-pygal
print pri ins side sid 技術分享 python應用 ima sel pygal安裝: Linux下: pip install pygal Windows下: python -m pip install pygal 效果如圖: # -*- coding
【NOIP2012模擬10.31】擲骰子
Description 有兩個人在長度為N的數軸上走路。 每次每個人可以有相等的概率向前走1~m步。 如果超過N他會往回走(參考飛行棋) 先走到N的人贏。 現在先手在x,後手在y。 求先手贏
3星|《給你講個笑話:我是創業公司CEO》:創業成功就是上帝擲骰子
第一桶金 管理 一個 kindle 上帝 小時 投資 bsp 合夥人 給你講個笑話:我是創業公司CEO 作者有過數次創業經歷,最後一次在濟南創業,後來公司搬到北京,看書中的交代公司目前好像還不算太成功。書中交代作者公司的業務是文化產品的策劃,沒細說做什麽,也沒說做成過
簡單C 程式 擲骰子
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
使用Jquery實現擲骰子
直接新建一個html頁面,需要在head中引入jquery,js,一些css程式碼以及js程式碼,如下: <script type="text/javascript" src="jquery-1.8.3.min.js"></script> <
《上帝擲骰子嗎---量子物理史話》曹天元
書是別人推薦看的, 總體不錯, 而且對經典物理, 相對論, 量子力學有了一定的瞭解, 吹牛裝逼不成問題。很多時候, 隱隱約約地, 在我腦海中, 會出現絕對時空, 決定論, 概率, 不確定等等東西, 也算是巧了。 看了本書,基本有了答案, 感覺還是有收穫的。很多問
玩eos上的擲骰子游戲---dice智慧合約
dice智慧合約的操作步驟,在eos的github上有,這裡不再贅述,這裡主要講dice智慧合約的實現。 dice在中文中是骰子。聰明的你已經猜到了,這可能是一個擲骰子游戲,沒錯,這就是一個雙人擲骰子游戲。 現在我們沿著操作步驟看它的實現: 第一步:充
隨機擲骰子並將結果視覺化
die.py from random import randint class Die(): def __init__(self,num_sides=6): self.num_sides=num_sides def roll(self):
模擬投擲骰子,一至六點出現的次數…
//========================E0408.java========================= public class E0408 { public static void main(String args[]) { int n=Integer.parseInt(arg
python分析擲骰子游戲
最近學習了點統計學及python知識,試著分析下擲骰子游戲。骰子按標準6面,分析一次投1顆、2顆、3顆、4顆,投擲10、100、1000、10000次時的結果。 使用工具 Jupyter Notebook 分析利器 matplotlib、pyga
Python3初級學習完畢,做一個擲骰子的小遊戲
1 import random 2 3 class Game: 4 5 def __init__(self,player1,player2): 6 self.player1=player1 7 self.player
編寫一個擲骰子100次的程式,打出各種點數的出現次數
<span style="font-size:18px;">int num1=0, num2=0, num3=0, num4=0, num5=0, num6=0; Random random = new Random();
華為機試題——擲骰子游戲
/*問題描述: 在擲骰子游戲中,會根據所擲數字在地圖中前進幾步,前進完成後需要根據當前地圖位置所示的障礙進行相應操作,其中障礙表示: 1) 9:無障礙 2) 1:停擲一輪,即下輪所擲數字無效; 3) 2:後退兩步,如果已經到起點不再後退; 4) 3:獎勵前進一步
java擲骰子游戲聯機版
目前只實現了一個人的客戶端,由服務端進行判斷輸贏,返回結果!人數,可以自行增加! 我使用多執行緒的方式,即每次押注都會通知伺服器端新開執行緒,在參與人數比較少的情況下,不會又問題!但是如果參與人數比較多,由於我的基準值,也就是初始金錢值使用的是同一個靜態變數,必然有可能會造
python.pygal/random學習範例-模擬擲六面骰子點數次數生成直方圖
from random import randint class Die(): '''表示一個骰子的類''' def __init__(self,num_sides=6): '''骰子認為6面''' self.num_sides=num_sides def rol