Game of Life

更新於 發佈於 閱讀時間約 2 分鐘

第一個要拿來練功的題目是:Game of Life。

第一次看到「Game of Life」這有趣的玩意兒,是在「柏拉圖的天空」這本書中,後來在「複雜」這本書中又看到,留下了非常深刻的印象。這都是幾十年前的事了,直到幾年前,在「泛科學」這個網站,還有文章在介紹,可見它的吸引力。

「Game of Life」吸引人的地方,在於幾條簡單的規則,就可以產生複雜又具生命力的圖案,而且可以一代一代地繁衍下去。它述說的是,在由棋盤方格組成的世界中,住著一個一個的cell。這些cell會出生、繁衍、死亡。規則只有四條,可以濃縮成三條,簡單得很,就是去數每個cell周圍活著和死掉的鄰居數量,然後決定cell是生是死。簡單歸簡單,不過要寫程式,就得先想想,要怎麼呈現結果。

很直覺的,這程式要區分成「核心計算」和「視覺呈現」兩部分。「核心計算」?看著好像很複雜、很有學問,但其實就是去實作那幾條規則啦!「視覺呈現」這部分的程式,就負責把「核心計算」的結果呈現在畫面上,至於要怎麼個呈現法,那就等「核心計算」先寫完再說囉!

留言
avatar-img
留言分享你的想法!
avatar-img
ysf的沙龍
15會員
143內容數
寫點東西自娛娛人
ysf的沙龍的其他內容
2025/04/14
花了些時間,靜下心來,仔仔細細地研究了一番,總算把Python呼叫函數時引數的傳遞方式給徹底搞清楚了。
2025/04/14
花了些時間,靜下心來,仔仔細細地研究了一番,總算把Python呼叫函數時引數的傳遞方式給徹底搞清楚了。
2024/05/08
呼!折騰了好久,終於徹底搞清楚pygame的各個blend mode所用的計算式,到底是長啥樣子了。
2024/05/08
呼!折騰了好久,終於徹底搞清楚pygame的各個blend mode所用的計算式,到底是長啥樣子了。
2023/12/20
在寫《The Nature of Code閱讀心得筆記——使用Python實作》的[第四章]4.3節時,原書提到,在使用Java的ArrayList時,如果用迴圈一面走訪一面又移除其中的元素,那會有難以察覺的問題存在。寫個小程式測試的結果發現,Python的list也會有一樣的問題。
Thumbnail
2023/12/20
在寫《The Nature of Code閱讀心得筆記——使用Python實作》的[第四章]4.3節時,原書提到,在使用Java的ArrayList時,如果用迴圈一面走訪一面又移除其中的元素,那會有難以察覺的問題存在。寫個小程式測試的結果發現,Python的list也會有一樣的問題。
Thumbnail
看更多
你可能也想看
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
遊戲應用上,我常常在上課中提到的架構 「目的、流程、判定、結束」 三個遊戲有趣的要素: 「局面」「行動-累積優勢」「獎勵」
Thumbnail
遊戲應用上,我常常在上課中提到的架構 「目的、流程、判定、結束」 三個遊戲有趣的要素: 「局面」「行動-累積優勢」「獎勵」
Thumbnail
這篇文章將會講述一款純粹由 AI 繪圖製作的遊戲,它的構想、初步架構;開發者的備註、心情;專案建置、介紹;遊戲流程圖、遊戲架構圖;遊戲初步的動畫腳本、草稿。
Thumbnail
這篇文章將會講述一款純粹由 AI 繪圖製作的遊戲,它的構想、初步架構;開發者的備註、心情;專案建置、介紹;遊戲流程圖、遊戲架構圖;遊戲初步的動畫腳本、草稿。
Thumbnail
「天啊!這程式怎麼這麼醜!」瞪著螢幕上先前寫的程式,不禁從心底冒出這樣的一句話。
Thumbnail
「天啊!這程式怎麼這麼醜!」瞪著螢幕上先前寫的程式,不禁從心底冒出這樣的一句話。
Thumbnail
Game of Life的輸出結果,也就是每代演化後universe的長相,程式要怎麼寫呢?現在有個二維list,裡頭放的是一堆0和1,要怎麼樣用西洋棋盤式的方式來顯示呢?這看來勢必得用到別人寫好的module來做,才能省時、省力又漂亮。第一個想到的,當然就是matplotlib這個科學繪圖用的mo
Thumbnail
Game of Life的輸出結果,也就是每代演化後universe的長相,程式要怎麼寫呢?現在有個二維list,裡頭放的是一堆0和1,要怎麼樣用西洋棋盤式的方式來顯示呢?這看來勢必得用到別人寫好的module來做,才能省時、省力又漂亮。第一個想到的,當然就是matplotlib這個科學繪圖用的mo
Thumbnail
Game of Life的「核心計算」部分寫好了,短短的沒幾行,畢竟也就那麼幾條判斷規則而已,沒什麼太複雜的東東要處理。說是寫好了,但到底能不能跑、跑出來的結果對不對,那可還是在未定之天哩。
Thumbnail
Game of Life的「核心計算」部分寫好了,短短的沒幾行,畢竟也就那麼幾條判斷規則而已,沒什麼太複雜的東東要處理。說是寫好了,但到底能不能跑、跑出來的結果對不對,那可還是在未定之天哩。
Thumbnail
寫程式時,很傷腦筋的一件事,就是變數的名稱該怎麼取。其實變數名稱隨便取,並不會影響程式的正確性,但對程式的可讀性,以及後續的維護,那可就影響深遠了。
Thumbnail
寫程式時,很傷腦筋的一件事,就是變數的名稱該怎麼取。其實變數名稱隨便取,並不會影響程式的正確性,但對程式的可讀性,以及後續的維護,那可就影響深遠了。
Thumbnail
第一個要拿來練功的題目是:Game of Life。
Thumbnail
第一個要拿來練功的題目是:Game of Life。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News