게 구고 ....;; -ㅅ-a
~cpp
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
int i=0, j=0, row=0, col=0;
int count=1, direction=0, walk=0;
int land[12][12];
for(i=0; i<12; i++) // ()
{
land[i][0] = -1;
land[i][11] = -1;
}
for(j=0; j<12; j++) // (||)
{
land[0][j] = -1;
land[11][j] = -1;
}
for(i=1; i<11; i++) // 10 X 10
{
for(j=1; j<11; j++)
{
land[i][j] = 0;
}
}
srand((time(0))); //
row = rand() % 10 + 1;
col = rand() % 10 + 1;
land[row][col]++; //
while(count != 0)
{
count = 0;
direction = rand() % 8 + 1;
switch(direction)
{
case 1: if(land[row-1][col-1] != -1) // ↖
{
land[--row][--col]++;
walk++;
break;
}
case 2: if(land[row-1][col] != -1) // ↑
{
land[--row][col]++;
walk++;
break;
}
case 3: if(land[row-1][col+1] != -1) // ↗
{
land[--row][++col]++;
walk++;
break;
}
case 4: if(land[row][col-1] != -1) // ←
{
land[row][--col]++;
walk++;
break;
}
case 5: if(land[row][col+1] != -1) // →
{
land[row][++col]++;
walk++;
break;
}
case 6: if(land[row+1][col-1] != -1) //
{
land[++row][--col]++;
walk++;
break;
}
case 7: if(land[row+1][col] != -1) // ↓
{
land[++row][col]++;
walk++;
break;
}
case 8: if(land[row+1][col+1] != -1) // ↘
{
land[++row][++col]++;
walk++;
break;
}
}
for(i=1; i<11; i++)
{
for(j=1; j<11; j++)
{
if(land[i][j] == 0)
{
count++;
break;
}
}
if(land[i][j] == 0)
{
count++;
break;
}
}
cout << "금까 " << walk << " 걸 걸";
if(walk >= 0 && walk <= 200)
cout << ".\n ! !" << endl;
else if(walk > 200 && walk <= 400)
cout << "...\n ..." << endl;
else if(walk > 400 && walk <= 600)
cout << "....;;\n 군...;" << endl;
else if(walk > 600 && walk <= 800)
cout << "구.......;;\n ...?" << endl;
else if(walk > 800 && walk <= 1000)
cout << "... ..;;;\n, ... ;□;" << endl;
else
cout << "~~\n꽤~~~~!! =□=;;;" << endl;
for(i=1; i<11; i++)
{
for(j=1; j<11; j++)
cout << land[i][j] << "\t";
cout << "\n";
}
system("cls");
}
cout << "결국 " << walk << " 걸 곳 갈 ... ;;\n\n";
for(i=1; i<11; i++)
{
for(j=1; j<11; j++)
cout << land[i][j] << "\t";
cout << "\n";
}
return 0;
}










