一区二区三区av无码观看_亚洲av极品无码专区在线观看_亚洲一区二区三区乱码AⅤ_好深好爽使劲我还要_国产成人a高清视频

聊城共贏網絡,聊城網站建設
我們專注:聊城做網站,聊城建網站,聊城網站建設,網站制作,虛擬主機,域名注冊,網站推廣等。聯系電話:15066359825 點擊這里給我發消息
最新公告 行業資訊  
當前位置:首頁 --> 問題 --> 常見問題
用c語言演繹“生命游戲”
發布時間:2010/10/17 10:24:44

 本世紀70年代,人們曾瘋魔一種被稱作“生命游戲”的小游戲,這種游戲相當簡單。假設有一個像棋盤一樣的方格網,每個方格中放置一個
生命細胞,生命細胞只有兩種狀態:“生”或“死”。游戲規則如下:
  1. 如果一個細胞周圍有3個細胞為生(一個細胞周圍共有8個細胞),則該細胞為生,即該細胞若原先為死,則轉為生,若原先為生,則保
持不變;
  2. 如果一個細胞周圍有2個細胞為生,則該細胞的生死狀態保持不變;
  3. 在其它情況下,該細胞為死,即該細胞若原先為生,則轉為死,若原先為死,則保持不變。

  依此規則進行迭代變化,使細胞生生死死,會得到一些有趣的結果。該游戲之所以被稱為“生命游戲”,是因為其簡單的游戲規則,反映了
自然界中的生存規律:如果一個生命,其周圍的同類生命太少的話,會因為得不到幫助而死亡;如果太多,則會因為得不到足夠的資源而死亡。

  用計算機模擬這個“生命游戲”也相當簡單,可以用一個M×N像素的圖像來代表M×N個細胞,其中每一個像素,代表一個細胞,像素為黑色
表示細胞為生,像素為白色代表細胞為死。

  設定圖像中每個像素的初始狀態后依據上述的游戲規則演繹生命的變化,由于初始狀態和迭代次數不同,將會得到令人嘆服的優美圖案。

  下面給出的小程序是用TC2.0編寫。演示100×100個生命細胞初始狀態全為生時的變代情況,變化時邊緣細胞不參與變化。隨著迭代次數的不
同,在屏幕顯示的圖案精彩紛呈,像萬花筒般引人入勝。
 。nclude
  main(){
  int orgData[100][100],resData[100][100];/*分別記錄每次迭代的初始和結果狀態*/
  int nCount,nRows,nCols,i,j,times; /*times記錄迭代次數*/
  int GraphDriver=DETECT,GraphMode;
  for (i=0;i<100;i++) /*初始化數據,令每一個細胞為生*/
  for (j=0;j<100;j++) orgData[j]=1;
  initgraph(&GraphDriver,&GraphMode,′′′′); /*初始化屏幕顯示*/
  setcolor(WHITE);
  rectangle(270,190,370,290); /*作顯示邊框*/
  for (times=1;times<200;times++){
  for (nRows=1;nRows<99;nRows++) {
  for (nCols=1;nCols<99;nCols++){
 。嬎忝恳粋細胞周圍的活的細胞數*/
  nCount=orgData[nRows-1][nCols-1]+orgData[nRows-1][nCols]
 。玱rgData[nRows-1][nCols+1]+orgData[nRows][nCols-1]
  +orgData[nRows][nCols+1]+orgData[nRows+1][nCols-1]
 。玱rgData[nRows+1][nCols]+orgData[nRows+1][nCols+1];
  switch(nCount){
  /*周圍有3個活細胞,該細胞為生,在屏幕上用黑色像素表示*
  case 3: putpixel(nCols+210,120+nRows,BLACK);
  resData[nRows][nCols]=1;break;
 。車2個活細胞,該細胞不變,在屏幕顯示也不變*/
  case 2: resData[nRows][nCols]=orgData[nRows][nCols];
  break;
 。渌闆r下,細胞為死,在屏幕上用白色像素表示*/
  default:resData[nRows][nCols]=0;
  putpixel(nCols+210,120+nRows,WHITE);
  }
  }
  }
  for (i=1;i<99;i++)
  for (j=1;j<99;j++) orgData[j]=resData[j];
  getch();
  }
  }
  在計算機上運行上述程序,得到迭代次數為45、69、74、78、97、116、119和156時的圖像分別如上圖所示。
  在實際模擬時,可以取更多的生命細胞,也可以考慮生命細胞的初始狀態是依一定概率設定的隨機狀態,變化時也可以讓邊緣細胞參與變化。
只要對上述程序略作更改,就會得到另外一系列美妙絕倫的圖案。

聊城網絡公司提供

銷售部 點擊這里給我發消息
技術部
點擊這里給我發消息
售后服務 點擊這里給我發消息
公司電話(傳真) 15066359825
聊城建網站首頁   公司簡介   網站建設   虛擬主機   域名注冊   網站推廣   公司資訊   成功案例   服務中心   聯系我們  網站地圖
版權所有 2008-2009 共贏網絡 qiao024.com 公司地址:聊城市利民東路 郵編:252000
銷售熱線:15066359825 技術支持:QQ:297369059 銷售在線服務: QQ:914082597
網站建設公司專業從事:聊城做網站,聊城建網站,聊城網站建設,聊城網站制作,虛擬主機,域名注冊,網站推廣等服務
聊城共贏網絡  
分公司:臨清網站建設陽谷網站建設、高唐網站建設、茌平網站建設、東阿網站建設、冠縣網站建設、莘縣網站建設