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

[0] Índice de Mensajes

Ir a la versión completa