WITAM serdecznie, mam problem z "gra w zycie'. Próbowałem na różne sposoby ugryźć ten problem ale nie moge sobie poradzić dlatego zwracam się o pomoc...
Otóż napisąłem macież 20x20 integer. wypełniona jest '0' oznaczonymi jako wygasłe komórki oraz '1' które sa oznaczone jako żywe. Poniżej umieszczam zasady conwaya które próbowałem zaimplementować:
Martwa komórka, która ma dokładnie 3 żywych sąsiadów, staje się żywa w następnej jednostce czasu (rodzi się)
Żywa komórka z 2 albo 3 żywymi sąsiadami pozostaje nadal żywa; przy innej liczbie sąsiadów umiera (z "samotności" albo "zatłoczenia").
chciałem stworzyć oscylator 'szybowiec' którego obra jest poniżej:
a tutaj moj kawałek kodu, z usuniętymi bzdurami które wczesniej pisałem.
program gra;
uses crt;
const
N=20;
var
tab:array [1..N,1..N] of integer;
a,i,j:integer;
flaga:integer;
procedure tablica;
var
i,j,z:integer;
begin
z:=N div 2;
for i:=1 to N do
for j:=1 to N do begin
tab[i,j]:=0;
end;
tab[1,1]:=1;
tab[2,2]:=1;
tab[2,3]:=1;
tab[3,1]:=1;
tab[3,2]:=1;
for i:=1 to N do
begin
for j:=1 to N do
write(tab[i,j],' ');
writeln;
end;
end;
begin
clrscr;
tablica;
readkey;
clrscr;
{tutaj chciałem wsadzić algorytmy na próbe które by tworzyły chociaz jedna komorke, albo gasiły - inaczej miejsce na próby}
for i:=1 to N do
begin
for j:=1 to N do
write(tab[i,j],' ');
writeln;
end;
readkey;
end.
Chciałbym zrobić to najprostrzą metodą, czyli jak zaczatki juz widac, prosta tablica z 0 i 1. Próbowałem coś z tym zrobić ale nie potrafie sobie poradzić i proszę o pomnoc gdyż każda będzie nieocenioną radą dla mnie.
Pozdrawiam