Constellation Knowledge Network - Preguntas y respuestas sobre Bagua - Comentarios para cada línea del código de Game of Life en Matlab

Comentarios para cada línea del código de Game of Life en Matlab

Centro de Control de Croma

¿Lo tienes claro? ¿Todos

Cerrar? Todo

m = 30n = 30p = .7h = 100;

%%

% genera una matriz a de 30*30, el valor de a se basa en aleatorio Si el número es mayor que el umbral 0,7 se determina como 1 o 0.

¿Para qué? x=1:m

¿Para qué? y=1:n

r = rand(1); %rand genera un número aleatorio de 0 a 1 (excluyendo 1).

¿Y si? r & gtp

a(x, y)= 1;

¿Y si? a(x, y) = 0;

Fin

Fin

Fin

%%

Para ¿Qué? x=1:m

¿Para qué? y=1:n

¿Y si? a(x, y)==1

FX =; fy=[0, 0, n, n]; fill (fx, fy, 'k'), ¿mantener? Dibuja un fondo negro de 30*30 en %

¿Para qué? x=2:m-1

¿Para qué? y=2:n-1

b(x,y)=a(x-1,y-1)+a(x-1,y)+a(x,y-1)+ a(x, y+1)+a(x, y+1)+a(x+1, y-1)+a(x+65438

%Según las reglas del juego de vida, tome la matriz A La suma de los valores de los ocho elementos alrededor del elemento (x, y), porque no hay ocho elementos adyacentes alrededor del elemento más externo

%, por lo que no considere el rango de valores de x e y ¿Es 2:m-1 y 2:n-1?

Si? x, y);

% Si hay dos células 1 alrededor de (x, y), que son dos células vivas en el sentido del juego, entonces la próxima vida y muerte de esta célula está relacionada con la original. vida y muerte.

Angstrom. x, y), son dos células en el sentido del juego. Una célula viva, entonces esta célula sobrevivirá en el siguiente momento (supongo que 1 está viva aquí)

¿De lo contrario c(x, y) =? 0;

% Si las células vivas alrededor de (x, y) no tienen estos dos valores, es decir, hay demasiadas o muy pocas, entonces la célula morirá en el siguiente momento (aquí estoy). asumir que 0 es muerte)

End

End

End

%%

c(1: m, 1)=a(1:m, 1);

c(1:m,n)=a(1:m,n); agregue dos columnas a ambos lados de %

c(1,1:n)=a(1,1 :n);% Creo que las siguientes dos líneas deberían agregarse aquí, pero el programa original no lo hace. De lo contrario, la parte que falta es cero y. la pantalla siempre es negra.

c(m, 1:n)=a(. m, 1:n % Tenga en cuenta que la representación matricial y el dibujo son equivalentes a la transposición matricial. Faltan filas de la matriz, los lados izquierdo y derecho se mostrarán en negro.

¿Por qué? p>

¿Para qué? (x, y)==1

fx=[x-1,x-1,x, x]; fy=[y-1, y, y, y-1]; , fy, ' g '), ¿finalizar en

Otro

Fin

Fin

% Dibuja c, como arriba, dibuja una

Pausa (. 05)% Pausa durante 0,05 segundos, observa el proceso de cambio

a = c; es decir, C en este momento se considera A en el momento anterior y el ciclo continúa dibujando

%Este proceso consiste en generar una matriz A aleatoria de 30 * 30, calcular y mostrar los 29 * del medio. 29 parte de la matriz A según las reglas del juego de la vida, y repite 100 veces.

%Se puede encontrar que el círculo más externo del gráfico no ha cambiado.

上篇: Adivinación de las monedas de cobre de Hong Kong_¿Es precisa la adivinación de las monedas de cobre de Hong Kong? 下篇: Interpretación de sueños con tigre en la puerta_ Interpretación de sueños con tigre en la puerta.
Artículos populares