U E D R , A S I H C RSS

Random Walk2/Leonardong

λ°λΈ”μŠ€ μΊ ν”„ μ…‹μ§Έλ‚  μŠ€μΌ€μ₯΄ μ›Œν¬ μ½”λ“œ

~cpp 
#include <iostream>
#include <ctime>
using namespace std;

const int Asize = 3;

int main()
{
	int board[Asize][Asize] = {0,};
	srand(time(0));
	int x = rand() % Asize;
	int y = rand() % Asize;
	cout << "μ‹œμž‘ μœ„μΉ˜ : " << x << ", " << y << endl;
	board[x][y] = 1;
	
	char input;
	int tempx=x, tempy=y;//벽을 ν†΅κ³Όν• λ•ŒλΌ λŒ€λΉ„ν•œ λ°±μ—…
	while (input!='\n')
	{
		cin.get(input);//ν•œμžμ”© μž…λ ₯λ°›κ²Œ
		switch(input)
		{
			case '1' : tempx = x++;
					 break;
			case '2' : tempx = x++, tempy = y++;
					 break;
			case '3' : tempy = y++;
					 break;
			case '4' : tempx = x--, tempy = y++;
					 break;
			case '5' : tempx = x--;
					 break;
			case '6' : tempx = x--, tempy = y--;
					 break;
			case '7' : tempy = y--;
					 break;
			case '8' : tempx = x++, tempy = y--;
					 break;
		}

		if (x >= Asize || y >= Asize || x < 0 || y < 0)//λ²½
		{
			x=tempx, y=tempy;
			continue;
		}
		board[x][y] += 1;
	}
	///////////////////////////////////////////////////////////////////////
	board[x][y] -= 1;//λ§ˆμ§€λ§‰μ— μ΄μƒν•˜κ²Œ ν•˜λ‚˜κ°€ 더 λ”ν•΄μ Έμ„œ λ‚˜μ˜¨λ‹€...γ…‘γ…‘;
	///////////////////////////////////////////////////////////////////////
	for (int j=0 ; j<Asize ; j++)
	{
		for (int k=0 ; k<Asize ; k++)
			cout << board[k][j] << "\t";
		cout << endl;
	}
	cout << endl;
	
	return 0;
}
μ•Œλ €μ§„ 였λ₯˜ : μ‹œμž‘ μœ„μΉ˜κ°€ 0,0 이고 1117661을 μž…λ ₯ν•˜λ©΄ 2,0 지점에 μˆ«μžκ°€ 2κ°€ λ‚˜μ˜¨λ‹€..γ…‘γ…‘; μ™œμ΄μ§€??

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:27:50
Processing time 0.0222 sec