본문 바로가기
Technote/Data Structure C++

[Data Structure] 실습2 : 이차원 배열 연습

by Pooh0216 2009. 9. 10.

실습 2 : 이차원 배열 연습

 

1. 개요

 

1차원 배열을 2차원 배열로 만드는 프로그램을 작성한다. 1차원 배열의 원소의 개수가 k일 때 행과 열의 수가 m, n 이라면 k = m*n이 된다. 2차원 배열의 각 행과 열에서 가장 큰 값을 새로운 1차원 배열에 각각 저장한 후 출력한다.

 

2. 요구 사항

 

n  배열의 크기는 12, 행과 열의 수는 각각 4, 3으로 하고 상수로 선언하여 사용한다.

             const int SIZE = 12;

             const int ROWMAX = 4;

             const int COLMAX = 3;

 

n  배열 데이터는 다음을 사용한다.

int array[SIZE] = {89, 88, 96, 23, 77, 12, 36, 28, 93, 83, 25, 30};

 

n  1차원 배열을 2차원 배열로 변환하기, 2차원 배열 출력하기, 각 행과 열의 최대값 구하기, 최대값 출력하기 등은 모두 함수를 사용하여 구현한다. 다음과 같은 함수 프로토타입을 사용하여 구현한다.

 

// 1차원 배열을 2차원 배열로 변환

void makeTwoDimension(int array[], int ROWMAX, int twoDimensionArray[][COLMAX])

// 2차원 배열 출력

void printTwoDimensionArray(int twoDimensionArray[][COLMAX], int ROWMAX);

// 2차원 배열의 각 행의 최대값을 구하여 1차원 배열 maxColArray에 저장

void findColMax(int twoDimensionArray[][COLMAX], int ROWMAX, int maxColArray[]);

// 2차원 배열의 각 열의 최대값을 구하여 1차원 배열 maxRowArray에 저장

void findRowMax(int twoDimensionArray[][COLMAX], int ROWMAX, int maxRowArray[]);

// 2차원 배열과 행과 열의 최대값을 출력

void printTwoDimensionArrayWithMax(int twoDimensionArray[][COLMAX], int ROWMAX,

int maxRowArray[], int maxColArray[]);

 


Solution