Skocz do zawartości
Raiden

Problem Z Programem W Pascalu

Rekomendowane odpowiedzi

Program powinien wypisywać zera i jedynki według pewnego algorytmu (Gra_w_%C5%BCycie). Jednak od 2 cyklu wypisywania w dolnych linijkach zamiast wpisywać zera lub jedynki wpisuje jakieś dziwne liczby. Wydaje mi się że problem tkwi gdzieś w przekazywaniu tablicy do funkcji, bo gdy program był robiony z tablicą globalną nie było problemu. Co konkretnie zmienić żeby działało??

 

program gra_o_zycie;uses crt;	type tab=array[0..21,0..21] of integer;function sprawdz:tab;var	i,j,k,n:integer;   t:tab;begin	     for i:=1 to 20 do begin   	for j:=1 to 20 do begin		  n:=0;		  for k:=1 to 3 do begin			  if	t[i-1,j-k+2]=1 then inc(n);			if t[i+1,j-k+2]=1 then inc(n);		 end;		 if t[i,j-1]=1 then inc(n);		 if t[i,j+1]=1 then inc(n);		  if ((t[i,j]=1) and ((n=2) or (n=3))) then t[i,j]:=1		 else if ((t[i,j]=1) and ((n<2) or (n>3))) then t[i,j]:=0		 else if ((t[i,j]=0) and (n=3)) then t[i,j]:=1		 else if ((t[i,j]=0) and (n<>3)) then t[i,j]:=0;	  end;   end;   sprawdz:=t;end;procedure wypisz(t:tab);var	i,j:integer;begin	clrscr;	for i:=1 to 20 do begin   	for j:=1 to 20 do begin		  write(t[i,j],' ');	  end;   writeln;	end;end;procedure generuj(t:tab);var	i,j:integer;begin	for i:=1 to 20 do begin		for j:=1 to 20 do t[i,j]:=random(2);   end;   for i:=0 to 21 do begin   	t[i,0]:=0;	  t[0,i]:=0;	  t[21,i]:=0;	  t[i,21]:=0;   end;end;begin	randomize;	clrscr;   generuj(sprawdz);   repeat	   wypisz(sprawdz);	  delay(1000);   until keypressed;   readln;end.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

umiesz korzystać z debugera i pracy krokowej? :wink: Takie problemy rozwiazuje się na poczekaniu wykorzystując narzędzia programistyczne.. Teraz czekasz aż ktoś zacznie parsować i kompilować program i uruchamiać go w trybie krokowym w swojej pamięci... :)

 

I to nie jest gra o życie , a gra W życie...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...