U E D R , A S I H C RSS

Magic Square/정훈

이거 딴애들꺼 힐끔 보니까..다들 2차원 배열을 썼던데...
끝까지 2차원 배열을 안쓰겠다는 일념으로 짰습니다~~..

내용을 보시면 무지 허접합니다~..^^;

마방진 입니다.
~cpp 
#include<iostream>
using namespace std;

int main()
{
	int soo;
	int ma[9][9];
	cout << "몇개의 칸으로 마방진을 할까??(9까지만 됨) ";
	cin >> soo;
	cout << soo << "*" << soo << "으로 한단말이지??\n";
	int x = (soo-1)/2;
	int y = 0;
	for(int q=0; q<9; q++)
		for(int w=0; w<9; w++)
			ma[q][w] = 0;
	ma[x][y] = 1;
	for(int i=2; i<=(soo*soo); i++)
	{
		if(x == soo-1 && y == 0)
		{
			y++;
			ma[x][y] = i;
		}
		else if(y == 0)
		{
			x++;
			y=soo-1;
			if(ma[x][y] != 0)
				y--;
			ma[x][y] = i;
		}
		else if(x == soo-1)
		{
			y--;
			x=0;
			if(ma[x][y] != 0)
				x++;
			ma[x][y]=i;
		}
		else
		{
			x++;
			y--;
			if(ma[x][y] != 0)
			{
				x--;
				y= y+2;
				ma[x][y] = i;
			}
			else
				ma[x][y] = i;
		}
	}
	for (int t=0; t<soo; t++)
	{
		for(int r=0; r<soo; r++)
			cout << ma[r][t] << "\t";
		cout << endl << endl;
	}

	return 0;
}

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-05-27 07:09:19
Processing time 0.0138 sec