Conway's Game of Life: Difference between revisions
Content added Content deleted
imported>Maxima enthusiast |
|||
Line 5,364: | Line 5,364: | ||
=={{header|EasyLang}}== |
=={{header|EasyLang}}== |
||
[https://easylang. |
[https://easylang.dev/apps/game-of-life.html Run it] |
||
<syntaxhighlight lang="text"> |
<syntaxhighlight lang="text"> |
||
# Game of life |
|||
⚫ | |||
n = 70 |
n = 70 |
||
time = 0.1 |
|||
⚫ | |||
nx = n + 1 |
|||
subr init |
subr init |
||
for r = 1 to n |
for r = 1 to n |
||
for c = 1 to n |
for c = 1 to n |
||
i = r * |
i = r * nx + c |
||
if randomf < 0.3 |
if randomf < 0.3 |
||
f[i] = 1 |
f[i] = 1 |
||
. |
|||
. |
. |
||
. |
|||
. |
|||
. |
. |
||
f = 100 / |
f = 100 / n |
||
subr show |
subr show |
||
clear |
clear |
||
for r = 1 to n |
for r = 1 to n |
||
for c = 1 to n |
for c = 1 to n |
||
if f[r * |
if f[r * nx + c] = 1 |
||
move |
move c * f - f r * f - f |
||
rect f * 0.9 f * 0.9 |
rect f * 0.9 f * 0.9 |
||
. |
|||
. |
. |
||
. |
|||
. |
|||
. |
. |
||
subr update |
subr update |
||
swap f[] p[] |
swap f[] p[] |
||
for r = 1 to n |
for r = 1 to n |
||
sm = 0 |
sm = 0 |
||
i = r * |
i = r * nx + 1 |
||
sr = p[i - |
sr = p[i - nx] + p[i] + p[i + nx] |
||
for c = 1 to n |
for c = 1 to n |
||
sl = sm |
|||
sm = sr |
|||
in = i + 1 |
|||
sr = p[ |
sr = p[in - nx] + p[in] + p[in + nx] |
||
s = sl + sm + sr |
s = sl + sm + sr |
||
if s = 3 or s = 4 and p[i] = 1 |
if s = 3 or s = 4 and p[i] = 1 |
||
f[i] = 1 |
f[i] = 1 |
||
else |
else |
||
f[i] = 0 |
f[i] = 0 |
||
. |
|||
i = in |
|||
. |
. |
||
. |
|||
. |
|||
. |
. |
||
on timer |
on timer |
||
update |
|||
show |
|||
timer |
timer time |
||
. |
. |
||
on mouse_down |
on mouse_down |
||
c = mouse_x div f |
c = mouse_x div f + 1 |
||
r = mouse_y div f |
r = mouse_y div f + 1 |
||
i = r * |
i = r * nx + c |
||
f[i] = 1 - f[i] |
f[i] = 1 - f[i] |
||
show |
|||
timer 3 |
timer 3 |
||
. |
. |
||
len f[] |
len f[] nx * nx + nx |
||
len p[] |
len p[] nx * nx + nx |
||
init |
|||
timer 0 |
timer 0 |
||
</syntaxhighlight> |
</syntaxhighlight> |