Programación General > Visual C++
Problema con Automata Celular
(1/1)
Turel:
Hola a todos, como pasatiempo estoy realizando el algoritmo del automata celular de conway, ya lo acabe(segun yo ¬¬) y al correrlo el programa se paraliza a medio proceso y ya no continua, me gustaria que me ayudaran a identificar el problema.
aqui les dejo todo mi codigo:
--- Código: Text ---#include<iostream.h> void main(){ int m,n,i,j,flagCell=0,iniX,iniY,finX,finY,a,b,vec; int cells[10][10], vecinos[10][10]; char opc; do { cout<<"DEMO v0.1----> Simulacion de Celdas; AUTOMATA CELULARaannn"; cout<<"Bienvenido al Programa de Simulacion de Celulas Por Favorn"; cout<<"Seleccione una Opcion del Siguiente Menu y presione Enter para continuar:n"; cout<<"(C) Crear Granja Celular.n"; cout<<"(M) Mostrar Granja Actualn"; cout<<"(A) Avanzar el Tiempo(Ejecucion del AUTOMATA)n"; cout<<"(S) Salirnn"; cout<<"Digite su Opcion: "; cin>>opc; switch(opc) { case 'c': case 'C': cout<<"Defina el Numero de Columnas y Filas De La Granja Celular:n"; cin>>m>>n; cout<<"<<<Empieza la Definicion de los Estados de la Simulacion>>>n"; cout<<"Digite 0 para Celula Muerta y 1 para Vivann"; for(i=0;i<=m-1;i++) { for(j=0;j<=n-1;j++) { cout<<"Digite el Estado De la Celula en el espacio ("<<i+1<<","<<j+1<<"): "; cin>>cells[i][j]; } } flagCell=1; break; case 'm': case 'M': if(flagCell==1) { cout<<"<<Imprimiendo Granja Celular, Por Favor Espere>>n"; for(i=0;i<=m-1;i++) { for(j=0;j<=n-1;j++) { if(cells[i][j]==0) cout<<"M "; else cout<<"V "; } cout<<"n"; } cout<<"Histograma:nnV: Celula Actual vivanM: Celula Actualmente muertann"; } else cout<<"Error01: Print Error - Tratando de Imprimir una Granja no Creada Anteriormente aann"; break; case 'a': case 'A': if(flagCell==1) { for(i=0;i<=m-1;i++) { for(j=0;j<=n-1;j++) { iniX=i-1; iniY=j-1; finX=i+1; finY=j+1; if(iniX<0) iniX=i; if(iniY<0) iniY=j; if(finX==m) finX=m-1; if(finY==n) finY=n-1; vec=0; a=0; b=0; for(a=iniX;a<=finX;a++) { for(b=iniY;b<=finY;b++) { if(a!=i||b!=j) { if (cells[a][b]==1) vec++; } } } vecinos[i][j]=vec; cout<<"La Celula ("<<i+1<<","<<j+1<<") Tiene "<<vec<<" Vecinosn"; } } } else cout<<"Error 02: Automate Error - El Automata no Puede ejecutarse si la Granja no ha sido Definidaaann"; for(i=0;i<=m-1;i++) { for(j=0;j<=n-1;j) { if(cells[i][j]==0) { if(vecinos[i][j]==3) cells[i][j]=1; } else { if(vecinos[i][j]<=1||vecinos[i][j]>=4) cells[i][j]=0; } } } cout<<"El tiempo avanzo con Exito Ahora puede mostrar La Granja con la siguiente Generacionnnaa"; break; } }while(opc!='s'||opc!='S');}
me gustaria que me ayudaran a identificar porque se detiene....
Navegación
Ir a la versión completa