※ 배열의 배열(다차원 배열)을 활용하여 다음과 같은 데이터를 요소로 취하는 배열(4*5)을 구성하고
 그 결과를 출력하는 프로그램을 구현한다.
 단, 배열을 구성하는 구문과 출력하는 구문은 별도로 작성할수 있도록 한다.

 

 실행 예)

   1   2   3   4   10 
   5   6   7   8   26 
   9  10  11  12   42
  13  14  15  16   58
  28  32  36  40  136
 계속하려면 아무 키나 누르세요...


방법 ①


public class Test095
{
	public static void main(String[] args)
	{

		int[][] arr = new int[5][5];

		int n = 0;
		
		for (int i = 0; i < 4; i++)		// i → 0 1 2 3
		{
			for (int j = 0; j < 4; j++)	// j → 0 1 2 3
			{
				n++;					// n → 1 2 3 4 5 6 7 ...
				arr[i][j] = n;

				arr[i][4] += arr[i][j];	// 00 →1 01 →2 02 →3 03 →4
				arr[4][j] += arr[i][j];
				arr[4][4] += arr[i][j];
			}
		}

		// 전체 요소 출력
		for (int i = 0; i < arr.length; i++)
		{
			for (int j = 0; j < arr[i].length; j++)
			{
				System.out.printf("%4d",arr[i][j]);
			}
			System.out.println();
		}
		
	}
}

 

방법 ②

		// 5행 5열 배열 준비
		int[][] arr = new int[5][5];
		int n = 1;
		
		// 배열 요소 초기화
		for (int i = 0; i < arr.length; i++)
		{
			for (int j = 0; j < arr[i].length; j++)
			{
				if(i==4 || j==4)
					arr[i][j] = 0;
				else
					arr[i][j] = n++;
			}

		}

		for (int i = 0; i < arr.length-1; i++ )
		{
			for (int j = 0; j < arr[i].length-1; j++)
			{
					arr[i][4] += arr[i][j];
			}
			for (int k = 0; k < arr[i].length - 1; k++)
			{	
				arr[4][i]+=arr[k][i];
			}
							
		}

		for (int i=0; i < arr.length ;i++ )
		{
				arr[4][4]+=arr[i][4];
		}
        
       		// 전체 요소 출력
		for (int i = 0; i < arr.length; i++)
		{
			for (int j = 0; j < arr[i].length; j++)
			{
				System.out.printf("%4d",arr[i][j]);
			}
			System.out.println();
		}

 

실행 결과

 

// 실행 결과
/*
   1   2   3   4  10
   5   6   7   8  26
   9  10  11  12  42
  13  14  15  16  58
  28  32  36  40 136
계속하려면 아무 키나 누르십시오 . . .
*/

+ Recent posts