易码技术论坛

 找回密码
 加入易码
搜索
查看: 162248|回复: 3

贪食蛇算法

[复制链接]
发表于 2006-1-30 11:58:00 | 显示全部楼层
自己看吧。相信能看得懂

0 GRAPH
10 DATA 1,9,2,9,3,9,4,9,5,9,6,9,7,9,8,9,9,9,10,9,11,9,12,9,13,9,14,9,15,9,16,9: REM x_y_DATA
20 FOR X =15000  TO 15031: READ D%: POKE X,D%: NEXT
30 REM ::initializing..._draw snake
40 FOR X =15000  TO 15031  STEP 2% =PEEK(X):E% =PEEK(X +1)
50 BOX (D% -1) *5,(E% -1) *5,D% *5,E% *5,1
60 NEXT
70 P% =15030: REM pointer
71 M% =4: REM mode.1 for up;2 for down;3 for left :4 for right
72 T% =0: REM Keys value
73 N% =0: REM keys check
74 MT% =M%: REM check if opposite
75 V1% =0:V2% =0: REM new x and y
76 P2% =0: REM new pointer
77 PX% =0Y% =0: REM snake_x & y
78 A% =0:B% =0: REM +-xy
79 TX% =0:TY% =0: REM clear_x&y
100 REM ::main
101 LOCATE 5,1: PRINT "Press any key";:T% =ASC( INKEY$)
105 T% =PEEK(199):N% =(T% =148) +(T% =149) *2 +(T% =151) *3 +(T% =150) *4: IF N%  THEN M% =N%
110 PX% =PEEK(P%)Y% =PEEK(P% +1)
115 T2% =PX% =1  OR PY% =1  OR PX% =32  OR PY% =16
120 IF ABS(MT% -M%) =1  AND NOT (MT% +M% =5) THEN IF T2%  THEN 105  ELSE M% =MT%
125 ON M%  GOTO 130,132,134,136
130 IF PY% =1  THEN 105  ELSE A% =0:B% =-1:140
132 IF PY% =16  THEN 105  ELSE A% =0:B% =1:140
134 IF PX% =1  THEN 105  ELSE A% =-1:B% =0:140
136 IF PX% =32  THEN 105  ELSE A% =1:B% =0:140
140 IF P% =15030  THEN P2% =15000  ELSE P2% =P% +2
142 TX% =PEEK(P2%):TY% =PEEK(P2% +1): BOX (TX% -1) *5,(TY% -1) *5,TX% *5,TY% *5,1,0
150 V1% =PEEK(P%) +A%:V2% =PEEK(P% +1) +B%
155 BOX (V1% -1) *5,(V2% -1) *5,V1% *5,V2% *5,1
160 POKE P2%,V1%: POKE P2% +1,V2%
170 P% =P2%
180 MT% =M%: GOTO 105
190 REM the end! ^O ^
200 REM 后记
210 REM 心情失落,作业没心情写,编了编汇编,可还是空虚,看到你发贴求snake算法
220 REM 就实现了一下我给你说的那个,速度很快,如果你觉得变量多麻烦,可再简化一下
230 REM 速度会更快!唉…又无事可作…

 楼主| 发表于 2006-1-30 19:02:00 | 显示全部楼层
我初一的时候编过一个,数组还是略逊风骚啊!
发表于 2006-1-30 19:05:00 | 显示全部楼层
不要瞎掰了,事实就知道什么是速度
 楼主| 发表于 2006-1-29 14:12:48 | 显示全部楼层 |阅读模式
怎样是贪食蛇速度(纯BAS中)快一些,算法是什么?
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2025-8-25 02:01 , Processed in 0.009784 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表