C語言製作智慧型蛇遊戲

2021-08-14 04:31:35 字數 822 閱讀 2182

上一周,我們做了字元貪吃蛇遊戲,但那個貪吃蛇需要我們的操控,今天,我們做乙個不需要我們操作的智慧型蛇。

智慧型蛇,顧名思義,是讓蛇有一定的智慧型,讓蛇自己決策,自己行動。當然,如果進一步智慧型,還可以讓蛇與另一條蛇搶奪食物。

我們先看一下要求

任務要求:本次專案的任務是讓蛇有一定的智慧型,能通過演算法具有 「感知 - 決策 - 行動」 的能力。近一步,你可以做出華麗的字元介面,實現 人控蛇 與 智慧型蛇 搶食大戰。

根據老師給提供的框架

寫出其偽**

// hx,hy: 頭的位置

// fx,fy:食物的位置

function wheregonext(hx,hy,fx,fy) 記錄可走的方向

// 用陣列distance[3]= 記錄離食物的距離

// 分別計算蛇頭周邊四個位置到食物的距離。h頭的位置,f食物位置

// 例如:假設輸入」a」 則distance[0] = |fx – (hx-1)| + |fy – hy|

// 如果 hx-1,hy 位置不是blank,則 distance[0] = 9999

// 選擇distance中存最小距離的下標p,注意最小距離不能是9999

// 返回 movable[p]

用c語言寫出來

這樣就可以了。

字元遊戲 智慧型蛇

基本原理 對於貪吃蛇怎麼在螢幕上移動,其實就是不斷重新整理螢幕,在乙個迴圈裡,每一次迴圈就像一張,以計算機的強大計算速度,連線成動態移動的蛇輕而易舉。由5個主要函式組成 1.首先初始化地圖,包括圍牆,蛇和食物。2.是否產生食物,判別條件為蛇頭是否與食物座標重合。3.獲取移動速度,蛇越長移速越快,移速...

字元遊戲 智慧型蛇

這裡我們暫且將食物數量設定為1,就如經典貪吃蛇那樣。接下來就是判斷要如何走了,而影響蛇行走方向的要素無非就是蛇頭與各個物件的關係,與蛇身的關係 下一步不能碰到蛇身自己撞死自己,下一步不能碰到牆,下一步要在以上條件之下盡可能往離食物更近的方向走。由於之前設計的貪吃蛇就有判斷下一步會不會自殺的函式塊ju...

字元遊戲 智慧型蛇

智慧型蛇是字串版貪吃蛇的公升級版。在這篇文章中,我將記錄我的學習過程,起到同大家分享 交流的目的。本次專案的任務是讓蛇有一定的智慧型,能通過演算法具有 感知 決策 行動 的能力。開發環境為linux。在編寫前,首先要掌握如何在終端上實現清屏。在字元終端上完成 清屏 修改游標位置 設定字元前景和背景色...