2015-01-29 3 views
-2

나는 현재 나의 hw에 도움이 필요하다. 우리는 수평, 수직, 대각선으로 4 개의 연속적인 숫자가 있는지 점검 할 수있는 번호판이있는 프로그램이 주어진다. 나는 전에 C++을 해왔고 자바를 시작했는데, 불행히도이 프로그램에서 어디서 시작해야할지 모르겠다.자바 연속 번호 검색

다음은 우리가 제공 한 프로그램의 골격입니다. 누군가에게 수평, 수직, 대각선으로 숫자를 찾는 방법을 알려줌으로써이 프로그램을 작성하기 시작해야합니다. 도움말 크게 감사드립니다.

import java.util.*; 
public class A3 
{ 

    public static void main(String[] args) 
    { 
     int[][] board = 
      { 
       {0, 1, 0, 6, 1, 6, 1}, 
       {0, 1, 6, 8, 6, 0, 1}, 
       {5, 2, 2, 1, 8, 2, 9}, 
       {6, 5, 6, 1, 1, 2, 1}, 
       {6, 5, 6, 2, 3, 9, 1}, 
       {3, 5, 6, 6, 9, 8, 9}, 
       {6, 7, 7, 7, 7, 9, 3}, 
       {1, 3, 5, 1, 9, 6, 7}  
      }; 

      System.out.println(isConsecutiveFour(board)); 

    } 

    public static boolean isConsecutiveFour(int[][] values) 
    { 
     return (isConsecutiveFourInHorizontal(values) || 
       isConsecutiveFourInVertical(values)  || 
       isConsecutiveFourInDiagonalLeft(values) || 
       isConsecutiveFourInDiagonalRight(values)); 
    } 

    public static boolean isConsecutiveFourInHorizontal(int[][] values) 
    { 
     boolean result = false; 
     return result; 
    } 

    public static boolean isConsecutiveFourInVertical(int[][] values) 
    { 
     boolean result = false; 
     return result; 
    } 

    public static boolean isConsecutiveFourInDiagonalLeft(int[][] values) 
    { 
     boolean result = false; 
     return result; 
    } 

    public static boolean isConsecutiveFourInDiagonalRight(int[][] values) 
    { 
     boolean result = false; 
     return result; 
    } 

} 
+0

이 단지 2 차원 배열을 쓰는 것 등 네 개의 숫자가 수평, 수직에있을 것이 무엇을 의미하는지 생각해 보자. 다른 언어와 다른 점이 없습니다. –

+2

과제를 실제로 시도해보고 문제가 발생하면보다 구체적인 질문을하십시오. 있는 그대로, 당신은 기본적으로 사람들에게 당신을위한 임무를 수행하도록 요청하고 있습니다. 전혀 시작할 곳이 정말로 모른다면 수업 노트를 검토하거나 근무 시간 중에 교수/TA와 이야기하는 것이 좋습니다. –

답변

0

문제를 해결하십시오. 수평, 수직, 대각선을 확인하는 방법이 필요합니다.

은 psuedocode에서

, 나는

checkhorizontal= 
for i in board.height -1 
    for j in board.width - 5 
    int v = board[i][j] 
     for k in 3 
     if board [i][j+k] == V+1 
     v++ 
      if k = 2 
      return true 
return false