Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

마방진/임민수

From ZeroWiki
Revision as of 08:21, 20 December 2013 by imported>qa22ahj
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
#include <iostream>
using namespace std;
int const arsize = 11;
void main()
{
	int num, garo=0, sero=0, cnt=1;
	cout << " 원하는 마방진의 크기를 입력하세요 (11 이하의 홀수만) : "; 
	cin >> num;
	int square[arsize][arsize]={0,};
	sero = num/2;
	square[0][sero]=1;
	while ( cnt < num*num )
	{
		garo--;
		sero++;
		if (garo < 0)
			garo = num-1;
		if (sero > num-1)
			sero = 0;
		if (square[garo][sero] !=0)
		{ garo+=2, sero-=1;}
		if (garo > num-1)
			garo = 1;
		if (sero < 0)
			sero = num-1;
		square[garo][sero]=++cnt;
	}
	
	for (int i = 0 ; i <num; i++)
	{
		for ( int j = 0 ; j < num ; j++)
		{
			cout << square[i][j] << "\t";
		}
		cout << endl;
	}
}

마방진, 임민수