Hi , I'm trying to write the code for a cellular automaton, but whenever I run the program I just get a block of #s which represent 1. I'm in C.
This is what I get
Welcome to the cellular automaton simulation!
Enter number of cells (<= 80):34
Enter number of time steps:54
Enter the index of occupied cells (negative index to end):-1
01234567890123456789012345678901234
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
###################################
I think I might have to use a double array or pointers, but I don't know where to put them in since I don't know where this code is going wrong


#include <stdio.h>
int cells, steps, myindex, i, heading, row;

void display(int cellnum[],int cells);
void update(int cellnum[],int cells);



int main()
{


printf("Welcome to the cellular automaton simulation!\n");

printf("Enter number of cells (<= 80):");
scanf("%d", &cells);

int cellnum[cells];
for(i=0;i<=cells;i=i+1)
{
cellnum[i]=0;
}

printf("Enter number of time steps:");
scanf("%d", &steps);

printf("Enter the index of occupied cells (negative index to end):");
scanf("%d", &myindex);
while(myindex>=0) {
cellnum[myindex]=1;
scanf("%d", &myindex);

}


/*Make Heading*/
for(i=0;i<=cells;i=i+1)
{
heading=i%10;
printf("%d", heading);
}
printf("\n");


/*Start Row Loop*/
for(row=1; row<=steps;row=row+1){

display(cellnum, cells);

update(cellnum, cells);


printf("\n");//make new row
}//for

}//main




void display(int cellnum[],int cells){




for(i=0;i<=cells;i=i+1)
{
if(cellnum[i]=1)
{
printf("#");
}
if(cellnum[i]=0)
{
printf(" ");
}
}
}




void update(int cellnum[],int cells){



for(i=1;i<=cells;i=i+1)
{
if((cellnum[i-1]=1) && (cellnum[i]=1) && (cellnum[i+1]=1))
{
cellnum[i]=0;
}

if((cellnum[i-1]=1) && (cellnum[i]=1) && (cellnum[i+1]=0))
{
cellnum[i]=1;
}

if((cellnum[i-1]=1) && (cellnum[i]=0) && (cellnum[i+1]=1))
{
cellnum[i]=1;
}

if((cellnum[i-1]=1) && (cellnum[i]=0) && (cellnum[i+1]=0))
{
cellnum[i]=0;
}

if((cellnum[i-1]=0) && (cellnum[i]=1) && (cellnum[i+1]=1))
{
cellnum[i]=1;
}

if((cellnum[i-1]=0) && (cellnum[i]=1) && (cellnum[i+1]=0))
{
cellnum[i]=1;
}

if((cellnum[i-1]=0) && (cellnum[i]=0) && (cellnum[i+1]=1))
{
cellnum[i]=1;
}

if((cellnum[i-1]=0) && (cellnum[i]=0) && (cellnum[i+1]=0))
{
cellnum[i]=0;
}
}
}