Programmerläuterung Matlab < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) überfällig | Datum: | 18:28 Mo 17.04.2006 | Autor: | qwe111 |
Hallo. Ich habe folgendes Programm, welches ich für eine Hausübung schriftlich erläutern soll. Was bewirkt Matrix=(rand(pdim)<pLife);
Temp=zeros(pdim); und die darauf folgende while schleife???? Brauche dringend hile
function GameOfLife()
% Seiten miteinander verkleben, so das ein "Torus" entsteht.
% Start mit 15 % lebenden Zellen
%Regel 1:
%Eine in t lebende Zelle lebt auch in t+1, wenn sie zum
%Zeitpunkt t genau 2 oder 3 lebende Nachbarn hatte.
%
%Kurz: Eine Zelle überlebt, wenn sie 2 oder 3 Nachbarn hatte.
%
%
%Regel 2:
%Eine in t tote Zelle lebt wieder in t+1, wenn sie zum
%Zeitpunkt t genau 3 Nachbarn hatte.
%
%Kurz: Eine Zelle wird wiedergeboren, wenn sie 3 Nachbarn hatte.
clc;
%Matrix erzeugen
pdim=20;
pLife=0.15;
colormap(gray(2));
%Matrix zufällig füllen
Matrix=(rand(pdim)<pLife);
Temp=zeros(pdim);
while [mm] ones(1,pdim)*(Temp==Matrix)*ones(pdim,1)~=pdim^2
[/mm]
Temp=Matrix;
%Visualisierung
image(5*abs(Temp-ones(pdim)))
%Erweitere Matrix zur Berechnung
Temp = [ Temp(pdim,pdim) Temp(pdim,:) Temp(pdim,1) ; Temp(:,pdim) Temp Temp(:,1) ; Temp(1,pdim) Temp(1,:) Temp(1,1) ];
for r=2:pdim+1
for c=2:pdim+1
%Anzahl der Nachbarn
NBH = ones(1,3) * Temp(r-1:r+1,c-1:c+1) * ones(3,1);
%Regel 1
if Temp(r,c)==1 &(NBH==3 || NBH==4)
Matrix(r-1,c-1)=1;
else
Matrix(r-1,c-1)=0;
end
%Regel 2
if Temp(r,c)==0 & NBH==3
Matrix(r-1,c-1)=1;
end
end
end
%Matrix zurückschneiden
Temp(:,[1 pdim+2])=[];
Temp([1 pdim+2],:)=[];
pause(0.5);
end
end
Ich habe diese Frage auch in folgenden Foren auf anderen Internetseiten gestellt: matheplanet.com
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 20:44 Mo 17.04.2006 | Autor: | BKM |
Hallo.
Ich bin gerne bereit ihnen zu helfen, aber es wäre schön von ihrer Seite wenigstens einen Ansatz für die Lösung zu sehen!
Vielleicht anfangen mir der Dimensionierung der Matrix! Dann überlegen, was z.Bsp. rand zu bedeuten hat?
Beste Grüße.
BKM
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 19:20 Di 02.05.2006 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|