您的位置:首页 > 其它

细胞自动机(生命游戏)源码

2013-06-05 11:52 281 查看
/*
裸机运行细胞自动机(生命游戏)
请反注释#define _RVM并删除ebasic.rp后再编译
*/

import "rbufm.h"

main
{
//先初始化堆,推荐把所有操作放在real_main里
rf.init_heap
real_main
}

real_main
{
char arr[25][80]
char* p(4194304)
for i=0 to 24
for j=0 to 79
{
arr[i][j]=(*p).toint%7
p++
}
char col=0
for
{
view arr,col
delay
trans arr
}
}

view(rbufm<rbuf<char>>& arr,char& col)
{
for i=0 to 24
for j=0 to 79
{
if arr[i][j]==1
rwin.text_n(i*80+j,char(`*))
else
rwin.text_n(i*80+j,char(` ))
col++
//在text_f后面加上col可以变换颜色
}
}

mac addc(a,b)
{
if(a>=0&&a<25&&b>=0&&b<80)
if(arr[a][b]==1)
count++;
}

trans(rbufm<rbuf<char>>& arr)
{
for i=0 to 24
for j=0 to 79
{
count=0
addc(i-1,j-1)
addc(i-1,j)
addc(i-1,j+1)
addc(i,j-1)
addc(i,j+1)
addc(i+1,j-1)
addc(i+1,j)
addc(i+1,j+1)
if count==3
arr[i][j]=1
elif count==2
;
else
arr[i][j]=0
}
}

delay
{
for i=0 to 400_0000
;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: