NxN 행렬에서 3개 연속, 4개 연속, 5개 연속 빙

고 찾기

¤ 가로, 세로, 대각선에서 찾아 시작 위치와 길이, 방

향을 출력

¤ 결과 출력 형식은 자유롭게

¤ 예 : (2,1)에서 가로로 5빙고

¨ N은 사용자가 입력하게 함 (3~5 사이)

¨ 행렬의 개수도 입력받음 (5~10 사이)

¨ 빙고 없는 경우 다시 생성함


* 쉽게말해서 (2,1) 3이뜨면 가로 2번째행, 세로 1번째행부터 똑같은 문자로 3개가 존재해서 3빙고가 되는거에요.


package entity;


import java.util.*;


public class Bingo  


{

static int bingoArray[][];

static char Names[] = {'x', '\u2660', 'o'};

Bingo(){

 bingoArray = new int[3][3];

}


int[][] initArray(){

 Random rand = new Random();

 

 for(int i = 0; i < bingoArray.length; i++){

  for(int j = 0; j < bingoArray.length; j++){

   bingoArray[i][j] = rand.nextInt(3);

  }

 }

 return bingoArray;

}


void printArray(){

 

 for(int i = 0; i < bingoArray.length; i++){

  for(int j = 0; j < bingoArray.length; j++){

   System.out.print(Names[bingoArray[i][j]] + " ");

  }

  System.out.println();

 }

}


boolean checkArray(){

 boolean judge = false;

 

 for(int i = 0; i < bingoArray.length; i++){

  if(bingoArray[i][0] == bingoArray[i][1] && bingoArray[i][1] == bingoArray[i][2]){

   judge = true;

  }

 }

 

 for(int i = 0; i < bingoArray.length; i++){

  if(bingoArray[0][i] == bingoArray[1][i] && bingoArray[1][i] == bingoArray[2][i]){

   judge = true;

  }

 }

 

 if(bingoArray[0][0] == bingoArray[1][1] && bingoArray[1][1] == bingoArray[2][2]){

  judge = true;

 }

 if(bingoArray[0][2] == bingoArray[1][1] && bingoArray[1][1] == bingoArray[2][0]){

  judge = true;

 }

 

 return judge;

}


void calPrintArray(){

 for(int i = 0; i < bingoArray.length; i++){

  if(bingoArray[i][0] == bingoArray[i][1] && bingoArray[i][1] == bingoArray[i][2]){

   System.out.println((i+1) + "행 빙고");

  }

 }

 

 for(int i = 0; i < bingoArray.length; i++){

  if(bingoArray[0][i] == bingoArray[1][i] && bingoArray[1][i] == bingoArray[2][i]){

   System.out.println((i+1) + "열 빙고");

  }

 }

 

 if(bingoArray[0][0] == bingoArray[1][1] && bingoArray[1][1] == bingoArray[2][2]){

  System.out.println("왼 대각선 빙고");

 }

 if(bingoArray[0][2] == bingoArray[1][1] && bingoArray[1][1] == bingoArray[2][0]){

  System.out.println("오른 대각선 빙고");

 }

}


public static void main(String[] args) {

 Bingo list[] = new Bingo[5];

 for(int i = 0; i < list.length; i++){

  list[i] = new Bingo();

  do{

   list[i].initArray();

  }while(list[i].checkArray() == false);

  list[i].printArray();

  list[i].calPrintArray();

 }

}


}



이코드를 기반으로 맨위내용처럼 수정해야하는데 도와주세요 ㅠㅠㅠㅠㅠ