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/Vector2 STL 편하 . -
편하 . :( -



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