電腦物理與教學 第八組

10
電電電電電電電 電電電 電電電電 電電電 電電 電電M10061306 電電電 M10061325 電電電

description

指導 教授:利見興 老師 學生: M10061306 張代雄 M10061325 張家寶. 電腦物理與教學 第八組. 範例 介紹 ( 模擬直線上的行人 ). 原始碼. steps++; //steps 每次執行完自動 +1 for( int i =1; i

Transcript of 電腦物理與教學 第八組

Page 1: 電腦物理與教學 第八組

電腦物理與教學

第八組指導教授:利見興 老師學生:

M10061306 張代雄M10061325 張家寶

Page 2: 電腦物理與教學 第八組

範例介紹( 模擬直線上的行人 )

Page 3: 電腦物理與教學 第八組

原始碼1.steps++;2.//steps 每次執行完自動 +13.for(int i=1; i<n; i++){4.// 宣告一個整數型態的變數 i 並給定初始值

為 15.double d=-1+2*Math.random();6.// 宣告一個 double 型態的變數 d, 初始值

為 2 倍亂數值 -1. 7.walkers[i]+=d;8.// 產生 walkers 陣列的各個值9.}

Page 4: 電腦物理與教學 第八組

限制與規則

• double d=-1+2*Math.random() 程式碼讓行人前進或後退的機率均等。• walkers[i]+=d , 此行程式碼

讓 walkers 陣列的值能儲存起來。事實上它也可以這樣寫。 walkers[i]=walkers[i] + d;

Page 5: 電腦物理與教學 第八組

範例介紹

Page 6: 電腦物理與教學 第八組

原始碼1. if(r<=pRight) {    // 判別 r 是否小於等於 0.252. xpos[i] = xpos[i]+1;    // 將 xpos[i]+1 後寫入

xpos 陣列3. } else if(r<pRight+pLeft) {    // 判別 r 是否在

0.25<r<0.5 間4. xpos[i] = xpos[i]-1;    // 將 xpos[i]-1 後寫入

xpos 陣列5. } else if(r<pRight+pLeft+pDown) {    // 判別 r

是否 < 0.756. ypos[i] = ypos[i]-1;    // 將 ypos[i]-1 後寫入

ypos 陣列7. } else {8. ypos[i] = ypos[i]+1;    // 將 ypos[i]+1 後寫入

ypos 陣列9. }

Page 7: 電腦物理與教學 第八組

限制與規則

• 按照程序的寫法,迴圈每執行一次,質點只會往前、後、下、上其中一個方向移動一格。

Page 8: 電腦物理與教學 第八組

主題介紹( 以亂數模擬大樂透開獎分析 )

Page 9: 電腦物理與教學 第八組

進度規劃• 0407 導論與分組

– 資料搜尋與主題討論。• 0428 提案報告

– 完成範例分析與主題架構,並開始寫作程式碼與模型。• 0512 進度報告 ( 一 )

– 預計完成第一階段程式碼與統計圖表。• 0526  進度報告 ( 二 )

– 預計完成第二階段程式碼 ( 重置、一次產生 N 組數據 ( 直顯示於圖表上 ))

• 0 預 616 成果演示– 成果展示。

Page 10: 電腦物理與教學 第八組

參考文獻• Open Source Physics

– http://www.compadre.org/osp/index.cfm

• Random Walk 1D Continuous Model Documents– http://www.compadre.org/OSP/document/ServeFile.cfm?ID=8844&

DocID=1170

• Random Walk 2D Model– http://

www.compadre.org/OSP/document/ServeFile.cfm?ID=8845&DocID=1172

• 台灣師大物理系 - 物理教學示範實驗教室– http://www.phy.ntnu.edu.tw/demolab/phpBB/