Random ... Scheduled .
~cpp //RandomWalk2 //Random Walk #include<iostream.h> int main() { //==================================== char way[20];//하 향(8향: 0~7) int input_y, input_x;//표 int start_y, start_x;// 표 int journey=0; int y, x;//표 int i, j;//for 한 int count=0;// int first_go=0; for(i=0;i<20;i++) way[i]='\0'; //x, y 표 , 화=== cout<<"\n x표 하: "; cin>>input_x; cout<<"\n y표 하: "; cin>>input_y; int **base=new int *[input_y]; for(i=0;i<input_x;i++) base[i]=new int [input_x]; for(i=0;i<input_y;i++){ for(j=0;j<input_x;j++) base[i][j]=0;} // , =========================== cout<<"\n x표 하: "; cin>>start_x; cout<<"\n y표 하: "; cin>>start_y; y=start_y; x=start_x; base[y][x]=1;// 한 1 first_go++; //향 =================================== cout<<" 향 : "; cin>>way; do{ //향 =================================== switch(way[journey]){ case '0':// if(y==0) y=input_y-1; else y--; if(base[y][x]==0) first_go++; base[y][x]++; count++; journey++; break; case '1':// if(y==0) y=input_y-1; else if(x==input_x-1) x=0; else if(y==0 && x==input_x-1){ x=0; y=input_y-1;} else{ y--; x++;} if(base[y][x]==0) first_go++; base[y][x]++; count++; journey++; break; case '2':// if(x==input_x-1) x=0; else x++; if(base[y][x]==0) first_go++; base[y][x]++; count++; journey++; break; case '3':// if(y==input_y-1) y=0; else if(x==input_x-1) x=0; else if(y==input_y-1 && x==input_x-1){ y=0; x=0;} else{ y++; x++;} if(base[y][x]==0) first_go++; base[y][x]++; count++; journey++; break; case '4':// if(y==input_y-1) y=0; else y++; if(base[y][x]==0) first_go++; base[y][x]++; count++; journey++; break; case '5':// if(y==input_y-1) y=0; else if(x==0) x=input_x-1; else if(y==input_y-1 && x==0){ y=0; x=input_x-1;} else{ y++; x--;} if(base[y][x]==0) first_go++; base[y][x]++; count++; journey++; break; case '6':// if(x==0) x=input_x-1; else x--; if(base[y][x]==0) first_go++; base[y][x]++; count++; journey++; break; case '7':// if(y==0) y=input_y-1; else if(x==0) x=input_x-1; else if(y==0 && x==0){ y=input_y-1; x=input_x-1;} else{ y--; x--; } if(base[y][x]==0) first_go++; base[y][x]++; count++; journey++; break; default: break; } }while(way[journey]!='\0'); cout<<"\n 횟 "<<count<<"회\n"; for(i=0;i<input_y;i++){ for(j=0;j<input_x;j++) cout<<base[i][j]<<" "; cout<<"\n";} //할한 for(i=0;i<input_x;i++) delete[] base[i]; delete [] base; return 0; }