0
class Bug {

// An ant is represented by the coordinates of its location,
// and the direction it is facing.
Integer x;
Integer y;
Dir dir;

enum Dir { E,W,N,S }
}

Bug(Integer x, Integer y, Dir dir) {
    this.x = x;
    this.y = y;
    this.dir = dir;
}}

class BugWorld {


Integer theBreadth, theHeight;
Board board;
Bug bug;

BugWorld(Integer breadth, Integer height) {
    board = new board(breadth, height);
    bug = new Bug(breadth/2, height/2, Ant.Direction.Y);
    theBreadth = breadth;
    theHeight = height;
}

私はすでに次のものを持っています:

Status status(Integer x, Integer y) {
    return board[x][y];
}


void update(Integer x, Integer y) {
    board[x][y].next();
}

以下のこの部分は、私が問題を抱えている場所です。

/* Take the world of the bug to the next step. */
void step() {
    // 1) Get the state at the present bug position.
          //I've done the following (next line) so far.
           Bug status(Integer x, Integer y); ...?

    // 2) Change the 'status' at that position.
             .............?
}

私が問題を抱えているのは、これらを組み合わせるだけです。

4

1 に答える 1

0

あなたが何をしようとしているのか理解するのは難しいですが、私はここにあなたが望むものがあると思います

void step(){

     //get the location of the bug 
     int x = bug.x;
     int y = bug.y;

     //gets the status of the location of the bug
     Status s = status(x,y);

     //move the bug, or do something based on the status of the place

     //update the status of the location the bug was originally on
     update(x,y)
}
于 2011-06-25T19:35:27.587 に答える