- 벽� 부딪히면 통과하여 반대쪽으로 나오는 것� 아니� 그냥 그�리� 있는 걸로 해놨습니다.
- ìƒ�ìš±ì�´ì�˜ ì§€ì �ì—� ë”°ë�¼ 하나ì�˜ í�´ëž˜ìФì—�서 ëª¨ë“ ê±¸ 처리하지 ì•Šê³ í�´ëž˜ìŠ¤ë¥¼ 여러개로 분리했습니다.
~cpp
import java.util.*;
public class main{
public static void main(String[] args)
{
//Board aboard=new Board();
Bug bug1=new Bug();
System.out.println("RandomWalk");
//aboard.board[0][0]++;
bug1.move();
}
}
Class Bug--ì�´ë�™í•˜ëŠ” ë²Œë ˆ~cpp
import java.util.*;
public class Bug{
public int x=0;
public int y=0;
public int way;
public int count=0;
public void move()
{
Board aboard=new Board();
aboard.board[0][0]++;
while(count<24)
{
Random rand=new Random();
way=rand.nextInt()%8;
if(way==0)//�
{
if(x>0)
{
x=x-1;
}
}
else if(way==1)//��
{
if(x>0 && y<4)
{
x=x-1;
y=y+1;
}
}
else if(way==2)//�
{
if(y<4)
{
y=y+1;
}
}
else if(way==3)//남�
{
if(y<4 && x<4)
{
x=x+1;
y=y+1;
}
}
else if(way==4)//남
{
if(x<4)
{
x=x+1;
}
}
else if(way==5)//남서
{
if(y>0 && x<4)
{
x=x+1;
y=y-1;
}
}
else if(way==6)//서
{
if(y>0)
{
y=y-1;
}
}
else if(way==7)//�서
{
if(y>0 && x>0)
{
x=x-1;
y=y-1;
}
}
if(aboard.board[x][y]==0)
{
count++;
}
aboard.board[x][y]++;
aboard.exhibit();
System.out.print("\n");
}
}
}
Class Board--ë²Œë ˆì�˜ ë°œìž�êµì�´ 남는 íŒ�. ë°œìž�êµì�„ 통해 ë°”í€´ë²Œë ˆì�˜ ì�´ë�™ ìƒ�황ì�„ ë³´ê³ í•œë‹¤.~cpp
import java.util.*;
public class Board{
public int board[][]={
{0,0,0,0,0},
{0,0,0,0,0},
{0,0,0,0,0},
{0,0,0,0,0},
{0,0,0,0,0}
};
public void exhibit(){
for(int i=0;i<5;i++)
{
for(int j=0;j<5;j++){
System.out.print(board[i][j]);
System.out.print("\t");
}
System.out.print("\n");
}
}
}
작성�: Yggdrasil
- ì˜�ë�™ì•„ while 문안ì—� 중복ì�´ 넘 심하다. 조금만 ê³ ë¯¼í•´ë³´ë©´ 중복 왕창 줄ì�¼ 수 있ì�„꺼야...^^ --재ë�™
--->확실히 빨리 배열로 í…Œì�´ë¸”(?) 만들어 놓는 걸 í•´ë´�ì•¼ê² ìŠµë‹ˆë‹¤. --ì˜�ë�™
- ë�°ë¸”스 ìº í”„í• ë•Œ ì €ëŸ°ê±° 해결하는 íŒ� 나왔었ë�˜ ê±° ê°™ì�€ë�°. LookUpTableì�´ë�¼ê³ .. -- ì�¸ìˆ˜










