討論串[問題] 迴圈加速
共 2 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓2(2推 0噓 3→)留言5則,0人參與, 最新作者Serenede (Serenede)時間9年前 (2014/12/21 00:27), 9年前編輯資訊
1
0
1
內容預覽:
sav = 0; iter = 10000000;. For[i = 1, i <= iter, i++,. If[Random[]^2 < 1/2, sav = sav + 1;]. ] // Timing. 2 sav/iter // N. 這樣居然也算了23秒,覺得有點太久,請問要怎樣寫才會快
(還有21個字)

推噓4(4推 0噓 4→)留言8則,0人參與, 最新作者LPH66 (1597463007)時間9年前 (2014/12/21 03:28), 編輯資訊
0
0
1
內容預覽:
這裡有幾個點可以提:. 首先, i 這個只有計數不參加計算的變數可以拿掉. 這種單純做某事 n 次的可以使用不帶變數的 Do. 此例就是改寫成 Do[If[Random[]^2 < 1/2, sav = sav + 1;], {it}]. 在我的電腦上這樣就可以只用 70% 的時間. 接下來要怎麼進
(還有2201個字)
首頁
上一頁
1
下一頁
尾頁