U E D R , A S I H C RSS

Randomwalk/조동영

2 1료구

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

void main(){

	srand(time(0));
	
	//바를 8방
	int imove[] = {-1,0,1,1,1,0,-1,-1};
	int jmove[] = {1,1,1,0,-1,-1,-1,0};
	
	// 방 기
	int Xroom;
	int Yroom;
	
	// 바 값
	int ibug;
	int jbug;
	
	int count = 0;		//  게될 integer 값
	bool existZero = false;		// 바가 모두 돌다녔는  bool 값

	int i,j;
	
	// 바가 돌다닐 방 
	do{ 
		cout << " 가로기를 (2 < X <= 40) :";
		cin >> Xroom;
		cout << " 기를 (2 <= Y < 20) :";
		cin >> Yroom;
        if (Xroom > 2 && Xroom < 41 && Yroom > 1 && Yroom < 21) 
			break; 
        cout << "로, 가로 를 벗. 다 ." << endl;
	}while(true); 

	// 2 만드는 
	int **room;

	room = new int*[Xroom];

	for (i=0; i<Xroom; i++)
		room[i] = new int[Yroom];
	
	//  
	for (i=0;i<Xroom;i++)
		for(j=0;j<Yroom;j++)
			room[i][j] =0;


	// 바는 do ~ while 문
	do{ 
		cout << "바 기값 X를  :";
		cin >> ibug;
		cout << "바 기값 Y를  :";
		cin >> jbug;
		if (ibug >= 0 && ibug < Xroom && jbug >= 0 && jbug < Yroom) 
			break; 
        cout << "바가 방를 벗. 다 ." << endl;
	}while(true); 

	room[ibug][jbug] = 1; // 바 기값 
	
	// 바고 모두 는 while문
	while(count<50000 && existZero == false){
		
		existZero = true;

		for(i=0;i<Xroom;i++){
			for(j=0;j<Yroom;j++){
				if(room[i][j] == 0)
					existZero = false;
			}
		}
		
		int random = rand()%8;	// 0~7 까    random 란 integer 값
		// 바가 범를 벗 
		if (ibug + imove[random] <0 || ibug + imove[random] > Xroom-1 || 
			jbug + jmove[random] <0 || jbug + jmove[random] > Yroom-1)
			continue;
		// 바
		else{
			room[ibug+imove[random]][jbug+jmove[random]]++;
			ibug = ibug + imove[random];
			jbug = jbug + jmove[random];
			count++;			
		}
		
		
	}
	// 력
	cout << "각 방   : \n\n";
	for(i=0;i<Xroom;i++){
		for(j=0;j<Yroom;j++)
			cout << setw(3) << room[i][j];
		cout << endl;
	}
	//  력
	cout << "\n   :" << count << endl;

	//메모리 
	for (i=0; i<Xroom;i++)
		delete[] room[i];
	delete [] room;

}

대략2

고리는데 는데..
2 본다ㅋ
랜만 C++ 로 보는듯...ㅋ
다른 면 더 듯.. 3 다.. ㅋ

드를 보면 다 모든 면 0를 검구나. 런 낭 내가 1 고리 께. m*n 0 밟게되면 를 +1 m*n 되면 그 공 모든 다는 기가 되. 다 그 면 되겠? 되면 나보고. -

2때 벡 . RandomWalk2/Vector로2만들기 료구 STL 면 더 같다. -
만 남발 . 료구 :( -


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