dimanche 1 janvier 2017

Game of Life implementation in java, wont give out proper output [on hold]

import java.util.Scanner;

public class Life {

static Scanner input = new Scanner(System.in);

public static void main(String[] args){

String [][]world;

world = new String [20][20];

String alivecell = "A";

String deadcell = "D";

int day = 0;

for (int a = 0; a<20; a++){

for (int a2 = 0; a2<20; a2++){

world [a][a2]  = deadcell;

 //shows every cell as dead 
}

}
int more = 1;     

// meant for if the player is wanting to add more living cells onto the game

while (more ==1){
int c = 21;// column
int r = 21;// row

while(c > 20||r > 20){// since the game is in a 20x20 grid, it will loop the         
code below if the column or row is above 20
System.out.println("Which column do you want a cell to be on?;
c = input.nextInt(); 
System.out.println("Which row do you want a cell to be on? ");
r=input.nextInt();  
c=c-1;
r=r-1;
}


    day = 1;/// a day of living cell(s) has begun
    System.out.println("day " + day);
    for(int a=0; a<20; a++ ){
        for(int a2=0; a2<20; a2++ ){



        world[c][r] = alivecell;// WHICH CELLS SHOULD BE ALIVE 

         System.out.format("%3s", world [a][a2] );//output shown in 20x20  
      grid



        }
        System.out.println();
    }   




    System.out.println("add more living cells (type 1) or start game (press     
   any other button)?");
    more = input.nextInt();
if (more !=1){
game(world, deadcell, deadcell, c, r, 0);
 }


}
 }


public static void game(String [][] world, String alivecell, String deadcell,  int c, int r, int day){

   // cells alive on prev day

        // if the number of neighbors were 2 or 3

        // neighbors in corners and sides (c/column =0 or r/row =0)

        // neighbors in any other area


    int cont = 1;
    day = 1;
    while (cont ==1){
        System.out.println("Day " +(day+1));
        day = day +1;
    for(int a=0; a<20; a++ ){
        for(int a2=0; a2<20; a2++ ){    

    if(world[(a)][a2] == alivecell || world[(a)][a2] == alivecell ){

 if         (world [c][r-1] == alivecell && world[c][r+1] ==alivecell   || 
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r] == alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world[c+1][r] ==alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r-1] == alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world[c+1][r+1] ==alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r+1] == alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world[c+1][r-1] ==alivecell ||
                //2 cells on a row and one more neighbor near in some form
                        world [c+1][r] == alivecell && world[c][r-1] == alivecell||
                        world [c+1][r] == alivecell && world[c][r+1] == alivecell||

                        world [c+1][r] == alivecell && world[c-1][r+1] == alivecell||
                        world [c+1][r] == alivecell && world[c-1][r-1] == alivecell||


                                world [c][r-1] == alivecell && world[c][r-1] == alivecell||
                                world [c][r+1] == alivecell && world[c][r+1] == alivecell||
                                world [c][r+1] == alivecell && world[c][r-1] == alivecell||
                                world [c][r-1] == alivecell && world[c][r+1] == alivecell||

                                world [c][r+1] == alivecell && world[c+1][r+1] == alivecell||
                                world [c][r-1] == alivecell && world[c+1][r-1] == alivecell||
                                world [c][r-1] == alivecell && world[c+1][r+1] == alivecell||
                                world [c][r+1] == alivecell && world[c+1][r-1] == alivecell||

                                world [c][r-1] == alivecell && world[c+1][r-1] == alivecell||

                                world [c+1][r-1] == alivecell && world[c+1][r] ==alivecell && world [c+1][r+1] == alivecell||
                                        world [c+1][r-1] == alivecell && world[c][r-1] ==alivecell && world [c+1][r+1] == alivecell||
                                        world [c+1][r-1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r+1] == alivecell
                ){

            world[a][a2]=alivecell;
                }else{
                    world[a][a2]=deadcell;
                }
            }
    if(world[a][(0)] == alivecell|| world[a][(20)] == alivecell){
        if(world [c+1][r] == alivecell && world[c-1][r] ==alivecell   || 
                world [c+1][r] == alivecell && world[c-1][r] ==alivecell && world [c][r+1] == alivecell ||
                world [c+1][r] == alivecell && world[c-1][r] ==alivecell && world [c-1][r+1] == alivecell ||
                world [c+1][r] == alivecell && world[c-1][r] ==alivecell && world [c+1][r+1] == alivecell ||
                        world [c-1][r+1] == alivecell && world[c][r+1] ==alivecell && world [c-1][r-1] == alivecell||
                        world [c+1][r+1] == alivecell && world[c+1][r] ==alivecell && world [c-1][r-1] == alivecell||

                        world [c+1][r-1] == alivecell && world[c+1][r] ==alivecell && world [c+1][r+1] == alivecell||
                        world [c+1][r-1] == alivecell && world[c-1][r] ==alivecell && world [c+1][r+1] == alivecell||
                        world [c+1][r-1] == alivecell && world[c][r-1] ==alivecell && world [c+1][r+1] == alivecell||
                        world [c+1][r-1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r+1] == alivecell||
                                world [c-1][r+1] == alivecell && world[c+1][r] ==alivecell && world [c-1][r-1] == alivecell||
                                world [c-1][r+1] == alivecell && world[c-1][r] ==alivecell && world [c-1][r-1] == alivecell||


                                        world [c-1][r] == alivecell && world[c][r+1] == alivecell||

                                        world [c+1][r] == alivecell && world[c][r+1] == alivecell||

                                        world [c-1][r] == alivecell && world[c+1][r+1] == alivecell||

                                        world [c+1][r] == alivecell && world[c+1][r+1] == alivecell||

                                        world [c-1][r] == alivecell && world[c-1][r+1] == alivecell||

                                        world [c+1][r] == alivecell && world[c-1][r+1] == alivecell)

            {
            world[a][a2] = alivecell;   
            }else{
                world[a][a2] = deadcell;    
            }


    }

    if(world[0][0] == alivecell){
        if(world[(0+1)][(0+1)] == alivecell && world[(0+1)][0]==alivecell&&world[0][(0+1)] == alivecell ||
                world[(0+1)][(0+1)] == alivecell && world[(0+1)][0]==alivecell||
                world[(0+1)][(0+1)]==alivecell && world[0][(0+1)]==alivecell||
                world[(0+1)][(0)] == alivecell && world[0][(0+1)] == alivecell 
                ){
            world [c][r] = alivecell;
        }   else {
                world [c][r] = deadcell;
            }

    }else if(world[0][0] ==deadcell){
        if(
                world[(0+1)][(0+1)] == alivecell && world[(0+1)][0]==alivecell||
                world[(0+1)][(0+1)]==alivecell && world[0][(0+1)]==alivecell||
                world[(0+1)][(0)] == alivecell && world[0][(0+1)] == alivecell 
                ){
            world [c][r] = alivecell;
    }else {
        world [c][r] = deadcell;
    }


    if (world[0][19] == alivecell){
        if(world[(0+1)][19] == alivecell && world[0][19-1]==alivecell&&world[0+1][19-1] == alivecell ||
                world[(0+1)][(19-1)] == alivecell && world[0][(19-1)]==alivecell||
                world[(0+1)][19]==alivecell && world[(0+1)][(19-1)]==alivecell||
                world[(0+1)][19] == alivecell && world[0][(19-1)] == alivecell 
                ){
            world [c][r] = alivecell;
        }else {
            world [c][r] = deadcell;
        }
    }else if (world[0][19] == deadcell){
        if(world[(0+1)][(19-1)] == alivecell && world[0][(19-1)]==alivecell||
                world[(0+1)][(19)]==alivecell && world[(0+1)][(19-1)]==alivecell||
                world[(0+1)][19] == alivecell && world[0][(19-1)] == alivecell 
                ){
            world [c][r] = alivecell;
        }else {
            world [c][r] = deadcell;
        }
    }
    if (world[19][19] == alivecell){
        if(world[19-1][19-1] == alivecell && world[19-1][19]==alivecell&&world[19][19-1] == alivecell ||
                world[19-1][19-1] == alivecell && world[19-1][19]==alivecell||
                world[19-1][19]==alivecell && world[19][19-1]==alivecell||
                world[19-1][19-1] == alivecell && world[19-1][19] == alivecell 
                ){
            world [c][r] = alivecell;
        }else {
            world [c][r] = deadcell;
        }
    }else if (world[19][19] == deadcell){
        if(
                world[19-1][19-1] == alivecell && world[19-1][19]==alivecell||
                world[19-1][19]==alivecell && world[19][19-1]==alivecell||
                world[19-1][19-1] == alivecell && world[19-1][19] == alivecell 
                ){
            world [c][r] = alivecell;
    } else {
        world [c][r] = deadcell;
    }
    if(world[19][0] == alivecell){
        if(world[(19-1)][0+1] == alivecell && world[(19+1)][0]==alivecell&&world[19][0+1] == alivecell ||
            world[(19+1)][0+1] == alivecell && world[(19-1)][0]==alivecell||
            world[(19-1)][0]==alivecell && world[19][0+1]==alivecell||
            world[(19-1)][0+1] == alivecell && world[19][0+1] == alivecell 
            ){
            world [c][r] = alivecell;
        }   else {
            world [c][r] = deadcell;
        }
    }else if(world[19][0] == alivecell){
        if(world[(19-1)][0+1] == alivecell && world[(19+1)][0]==alivecell&&world[19][0+1] == alivecell ||
                world[(19+1)][0+1] == alivecell && world[(19-1)][0]==alivecell||
                world[(19-1)][0]==alivecell && world[19][0+1]==alivecell||
                world[(19-1)][0+1] == alivecell && world[19][0+1] == alivecell 
                ){
            world [c][r] = alivecell;
        }   else {
            world [c][r] = deadcell;
        }

    }       

    if (world [a][a2]== alivecell){
        if      (world [c][r-1] == alivecell && world[c][r+1] ==alivecell   || 
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world [c-1][r] == alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world[c+1][r] ==alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world [c-1][r-1] == alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world[c+1][r+1] ==alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world [c-1][r+1] == alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world[c+1][r-1] ==alivecell ||
                //2 cells on a row and one more neighbor near in some form

                world [c-1][r] == alivecell && world[c+1][r] ==alivecell   || 
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c][r+1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c][r-1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c+1][r+1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c-1][r+1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c+1][r-1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c-1][r-1] == alivecell ||
                // 2 cells on a column and one more neighbor near in some form

                world [c+1][r-1] == alivecell && world[c-1][r+1] == alivecell||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c-1][r-1] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c+1][r+1] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c+1][r] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c][r+1] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c-1][r] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c][r-1] == alivecell ||

                world [c+1][r+1] == alivecell && world[c-1][r-1] == alivecell||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c+1][r] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c][r+1] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c][r-1] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c-1][r+1] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c-1][r] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c+1][r-1] == alivecell||

                // 2 cells shown diagonally and one more neighbor near in some form

                        world [c-1][r] == alivecell && world[c][r-1] == alivecell||//
                        world [c+1][r] == alivecell && world[c][r+1] == alivecell||
                        world [c+1][r] == alivecell && world[c][r-1] == alivecell||//
                        world [c-1][r] == alivecell && world[c][r+1] == alivecell||
                        world [c+1][r] == alivecell && world[c+1][r-1] == alivecell||//
                        world [c+1][r] == alivecell && world[c-1][r+1] == alivecell||
                        world [c-1][r] == alivecell && world[c-1][r-1] == alivecell||//
                        world [c-1][r] == alivecell && world[c-1][r+1] == alivecell||
                        world [c+1][r] == alivecell && world[c-1][r-1] == alivecell||//
                        world [c+1][r] == alivecell && world[c+1][r+1] == alivecell||
                        world [c-1][r] == alivecell && world[c-1][r-1] == alivecell||//
                        world [c-1][r] == alivecell && world[c+1][r+1] == alivecell||

                                world [c][r-1] == alivecell && world[c][r-1] == alivecell||
                                world [c][r+1] == alivecell && world[c][r+1] == alivecell||
                                world [c][r+1] == alivecell && world[c][r-1] == alivecell||
                                world [c][r-1] == alivecell && world[c][r+1] == alivecell||
                                world [c][r+1] == alivecell && world[c+1][r-1] == alivecell||
                                world [c][r+1] == alivecell && world[c-1][r+1] == alivecell||
                                world [c][r-1] == alivecell && world[c-1][r-1] == alivecell||
                                world [c][r-1] == alivecell && world[c-1][r+1] == alivecell||
                                world [c][r+1] == alivecell && world[c-1][r-1] == alivecell||
                                world [c][r+1] == alivecell && world[c+1][r+1] == alivecell||
                                world [c][r-1] == alivecell && world[c-1][r-1] == alivecell||
                                world [c][r-1] == alivecell && world[c+1][r+1] == alivecell||


                                        world [c+1][r+1] == alivecell && world[c][r-1] ==alivecell && world [c+1][r-1] == alivecell||
                                        world [c+1][r+1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r-1] == alivecell||
                                        world [c+1][r+1] == alivecell && world[c-1][r] ==alivecell && world [c+1][r-1] == alivecell||

                                        world [c-1][r-1] == alivecell && world[c-1][r] ==alivecell && world [c-1][r+1] == alivecell||
                                        world [c-1][r-1] == alivecell && world[c+1][r] ==alivecell && world [c-1][r+1] == alivecell||
                                        world [c-1][r-1] == alivecell && world[c][r-1] ==alivecell && world [c-1][r+1] == alivecell||
                                        world [c-1][r-1] == alivecell && world[c][r+1] ==alivecell && world [c-1][r+1] == alivecell||

                                        world [c-1][r-1] == alivecell && world[c-1][r] ==alivecell && world [c+1][r-1] == alivecell||
                                        world [c-1][r-1] == alivecell && world[c+1][r] ==alivecell && world [c+1][r-1] == alivecell||
                                        world [c-1][r-1] == alivecell && world[c][r-1] ==alivecell && world [c+1][r-1] == alivecell||
                                        world [c-1][r-1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r-1] == alivecell||

                                                world [c+1][r+1] == alivecell && world[c-1][r] ==alivecell && world [c+1][r-1] == alivecell||
                                                world [c+1][r+1] == alivecell && world[c+1][r] ==alivecell && world [c+1][r-1] == alivecell||
                                                world [c+1][r+1] == alivecell && world[c][r-1] ==alivecell && world [c+1][r-1] == alivecell||
                                                world [c+1][r+1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r-1] == alivecell
                                // mix
                )


        {
            world [c][r] = alivecell;
        }   else {
            world [c][r] = deadcell;
        }



    }else if (world [a][a2]== deadcell){


        if ( 
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world [c-1][r] == alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world[c+1][r] ==alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world [c-1][r-1] == alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world[c+1][r+1] ==alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world [c-1][r+1] == alivecell ||
                world [c][r-1] == alivecell && world[c][r+1] ==alivecell && world[c+1][r-1] ==alivecell ||
                //2 cells on a row and one more neighbor near in some form


                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c][r+1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c][r-1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c+1][r+1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c-1][r+1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c+1][r-1] == alivecell ||
                world [c-1][r] == alivecell && world[c+1][r] ==alivecell && world [c-1][r-1] == alivecell ||
                // 2 cells on a column and one more neighbor near in some form


                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c-1][r-1] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c+1][r+1] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c+1][r] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c][r+1] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c-1][r] == alivecell ||
                world [c+1][r-1] == alivecell && world[c-1][r+1] ==alivecell && world [c][r-1] == alivecell ||


                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c+1][r] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c][r+1] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c][r-1] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c-1][r+1] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c-1][r] == alivecell ||
                world [c+1][r+1] == alivecell && world[c-1][r-1] ==alivecell && world [c+1][r-1] == alivecell||
                world [c+1][r+1] == alivecell && world[c-1][r] ==alivecell && world [c+1][r-1] == alivecell||
                // 2 cells shown diagonally and one more neighbor near in some form

                world [c+1][r+1] == alivecell && world[c][r-1] ==alivecell && world [c+1][r-1] == alivecell||
                world [c+1][r+1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r-1] == alivecell||
                world [c+1][r+1] == alivecell && world[c-1][r] ==alivecell && world [c+1][r-1] == alivecell||
                world [c+1][r+1] == alivecell && world[c-1][r] ==alivecell && world [c+1][r-1] == alivecell||

                world [c-1][r-1] == alivecell && world[c-1][r] ==alivecell && world [c-1][r+1] == alivecell||
                world [c-1][r-1] == alivecell && world[c+1][r] ==alivecell && world [c-1][r+1] == alivecell||
                world [c-1][r-1] == alivecell && world[c][r-1] ==alivecell && world [c-1][r+1] == alivecell||
                world [c-1][r-1] == alivecell && world[c][r+1] ==alivecell && world [c-1][r+1] == alivecell||

                world [c-1][r-1] == alivecell && world[c-1][r] ==alivecell && world [c+1][r-1] == alivecell||
                world [c-1][r-1] == alivecell && world[c+1][r] ==alivecell && world [c+1][r-1] == alivecell||
                world [c-1][r-1] == alivecell && world[c][r-1] ==alivecell && world [c+1][r-1] == alivecell||
                world [c-1][r-1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r-1] == alivecell||

                        world [c+1][r+1] == alivecell && world[c-1][r] ==alivecell && world [c+1][r-1] == alivecell||
                        world [c+1][r+1] == alivecell && world[c+1][r] ==alivecell && world [c+1][r-1] == alivecell||
                        world [c+1][r+1] == alivecell && world[c][r-1] ==alivecell && world [c+1][r-1] == alivecell||
                        world [c+1][r+1] == alivecell && world[c][r+1] ==alivecell && world [c+1][r-1] == alivecell
            // mix  

                )



        {
            world [c][r] = alivecell;
        }else{
            world [c][r] = deadcell;

        }

}
    }
    }


    System.out.format("%3s",world [a][a2]);
        }
        System.out.println();
        }


    System.out.println("continue / start next day, y(1) or n(2)?");
    cont = input.nextInt();
    }
    switch (cont){

    case 2:
        System.out.println("end");
        break;
    }

  //end

  }

    }

OUTPUT

Which column do you want a cell to be on? (starts at 0)

2

Which row do you want a cell to be on?

2

day 1

D D D D D D D D D D D D D D D D D D D D

D A D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

add more living cells (type 1) or start game (press any other button)?

1

Which column do you want a cell to be on? (starts at 0)

2

Which row do you want a cell to be on?

3

day 1

D D D D D D D D D D D D D D D D D D D D

D A A D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

add more living cells (type 1) or start game (press any other button)?

1

Which column do you want a cell to be on? (starts at 0)

2

Which row do you want a cell to be on?

4

day 1

D D D D D D D D D D D D D D D D D D D D

D A A A D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

add more living cells (type 1) or start game (press any other button)?

2

Day 2

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

D D D D D D D D D D D D D D D D D D D D

if the cells were near each other in this way, the "day 2 " out put should've been

D D A D D D D D D D D D D D D D D D D D

D D A D D D D D D D D D D D D D D D D D

D D A D D D D D D D D D D D D D D D D D

How to add value to previous row if condition is met

What I am trying to do is if a row in column b is equal to 2 then I want to add 3 to the value of the previous row in column a. And if the condition is not met, then I don't want the previous row value to change. When I try this code however R is adding to the subsequent row. And it doesn't matter what I replace the -1 row reference with it always adds to the subsequent row.

df$a[-1]<-ifelse(df$b==2,df$a[-1]+3,df$a[-1])

c++. possible to do this? if(x>3) int foo=10 else long foo=10 without getting error: 'was not declared in this scope'

c++. Is it possible to do this? if(x>3) int foo=10 else long foo=10 without getting error: 'was not declared in this scope'

If statement with preg_match

How can i have that code right ?

if (!preg_match($ibanValidation,$iban)&& !preg_match($bicValidation,$bic) || (!preg_match($kartennumerValidation,$kartennumer)&&!preg_match($cvvValidation,$cvv))){
           do something;
}

It must to make such a thing like:

if(!preg_match($ibanValidation,$iban) AND (!preg_match($bicValidation,$bic) OR
if(!preg_match($kartennumerValidation,$kartennumer) AND (!preg_match($cvvValidation,$cvv){
do something;
}

But that all in one statemant not in two!

Repeat the argument in java

'Scanner two = new Scanner(System.in); System.out.println("Enter Age:" );` age = two.nextInt(); if(age < 18){ System.out.println("You are a minor. You cannot proceed.");

    } else {
    System.out.println("Age accepted " + age);
    }'

Is there an noticeable difference between "if(x==false)x=true;" and "x=true"?

Which code fragment is faster?

if(a==false)a=true;

and

a=true;

Adding up values around a specific point in an array in Java

So I have a 2D array which is filled with 1's and 0's. I want to check the neighbours of a specific index in the array, and add their values up.

The first and last rows and columns (aka the 'bordering' values) are special cases as they are not completely surrounded with neighbouring values which means I have to put lots of conditionals to take them into account.

If I only do the first if statement, I get the problem of arrayIndexOutOfBounds. Which makes sense to me as its trying to go to position integerGeneration[-1][-1], for example.

What I have done below works, but its really ugly and I feel there is a "neater" approach to this.

Is there a better way than doing all the special cases on the outer borders of the array in their own else if statements?

if ((x > 0 & x < rows-1) & (y > 0 & y < columns-1) ) {      // checks the inside box
    for (int i = x - 1; i < x + 2; i++) {
        for (int j = y - 1; j < y + 2; j++) {
            filled = integerGeneration[i][j] + filled;
        }
    }
    filled = filled - integerGeneration[x][y];
    return filled;
}
else if (x == 0 & y < columns-1 & y > 0) {                  // checks the top edge
    for (int i = x; i < x + 2; i++) {
        for (int j = (y - 1); j < y + 2; j++) {
            filled = integerGeneration[i][j] + filled;
        }
    }
    filled = filled - integerGeneration[x][y];
    return filled;
}
else if (y == 0 & x < rows-1 & x > 0) {                     // checks the left edge
    for (int i = x - 1; i < x + 2; i++) {
        for (int j = y; j < y + 2; j++) {
            filled = integerGeneration[i][j] + filled;
        }
    }
    filled = filled - integerGeneration[x][y];
    return filled;
}
else if (x == 0 & y == 0) {                                 // checks the top left corner
    for (int i = x; i < x + 2; i++) {
        for (int j = y; j < y + 2; j++) {
            filled = integerGeneration[i][j] + filled;
        }
    }
    filled = filled - integerGeneration[x][y];
    return filled;
}
else if (x == rows-1 & y < columns-1 & y > 0) {             // checks the bottom edge
    for (int i = x - 1; i < x + 1; i++) {
        for (int j = y - 1; j < y + 2; j++) {
            filled = integerGeneration[i][j] + filled;
        }
    }
    filled = filled - integerGeneration[x][y];
    return filled;
}
else if (y == columns-1 & x < rows-1 & x > 0) {             // checks the right edge
    for (int i = x - 1; i < x + 2; i++) {
        for (int j = y - 1; j < y + 1; j++) {
            filled = integerGeneration[i][j] + filled;
        }
    }
    filled = filled - integerGeneration[x][y];
    return filled;
}
else if (y == columns-1 & x == rows-1) {                    // checks the bottom right corner
    for (int i = x - 1; i < x + 1; i++) {
        for (int j = y - 1; j < y + 1; j++) {
            filled = integerGeneration[i][j] + filled;
        }
    }
    filled = filled - integerGeneration[x][y];
    return filled;
}
else if (x == 0 & y == columns-1) {                         // checks the top right corner
    for (int i = x; i < x + 2; i++) {
        for (int j = y - 1; j < y + 1; j++) {
            filled = integerGeneration[i][j] + filled;
        }
    }
    filled = filled - integerGeneration[x][y];
    return filled;
}
else if (x == rows-1 & y == 0) {                            // checks the bottom left corner
    for (int i = x - 1; i < x + 1; i++) {
        for (int j = y; j < y + 2; j++) {
            filled = integerGeneration[i][j] + filled;
        }
    }
    filled = filled - integerGeneration[x][y];
    return filled;
}
else {
    System.out.println("Error, point out of bounds");
    return -1;
}

}