Note x, y 좌표를 바로 반환하면 안 되나요?
getEmptyPosition() 함수와 shuffleAnimal() 함수에서 모두 conv_pos_x() 함수와 conv_pos_y() 함수를 사용합니다. 같은 함수를 중복으로 사용하고 있죠. getEmptyPosition() 함수에서 빈 공간을 찾아 randPos 변수를 반환한 것처럼 conv_pos_x() 함수와 conv_pos_y() 함수로 구한 x 좌표와 y 좌표를 반환하면 되지 않을까 생각할 수 있습니다.
int pos = getEmptyPosition();
int x = conv_pos_x(pos);
int y = conv_pos_y(pos);
shuffleAnimal() 함수의 좌표 변환
intt randPos = rand() % 20;
intt x = conv_pos_x(randPos);
intt y = conv_pos_y(randPos);
getEmptyPosition() 함수의 좌표 변환
이러한 중복 작업을 줄이려면 함수의 반환형을 int형 말고 구조체를 사용해야 합니다. 그런데 구조체를 아직 배우지 않아서 여기서는 int형으로 함수의 반환값을 넘기는 방식을 사용했습니다. 구조체는 바로 다음 장인 9장에서 공부합니다.