/    Sign up×
Community /Pin to ProfileBookmark

Creating Two Business Objects… Do these have all of the methods/functions needed?

Hey everyone… I’m creating some business objects for a class I’m taking to freshen up on my skills, and I have had to make a few business objects. I’m pretty sure on the others (the other ones are testing my thoroughness on interfaces, abstract classes, and inheritance). I just have to write methods that deal with the functionality related to these two objects (the code doesn’t have to be perfect at all, pseudo code is acceptable):

1) Building Object (say the building is 20 levels, but this could work for any building with a number of floors)

2) Elevator Object (has to include code to include the machinery moving the elevator up and down smoothly, not just going from level 1 to level 3, etc… it has to pass from level 1 to level 2 to level 3)

** I definitely need help and making sure I am going in the right direction… any help is APPRECIATED!!!

class Building
{
boolean _bPower = false;
int _
iNumberOfFloors = 0;

public void setPower(boolean b) { _bPower = b;}
public boolean hasPower() { return _bPower; }

public void setNumberOfFloors(int i) { _iNumberOfFloors = i;}
public int getNumberOfFloors() { return _iNumberOfFloors; }

}

class Elevator
{
boolean _bWorking = false;
boolean _
bDoorOpened = true;
boolean _bButtonDepressed = false;
Vector _
vFloorCalledQuery = new Vector();
int _iCurrentFloor = 0;

public void setElevatorWorking(boolean b) { _bWorking = b; }
public boolean isWorking() { return _bWorking); }

public void setDoorOpened(boolean b) { _bDoorOpened = b; }
public boolean isDoorOpened() { retrun _bDoorOpened; }

public void setButtonDepressed(boolean b) { _bButtonDepressed = b; }
public boolean isButtonDepressed() { retrun _bButtonDepressed ; }

public void setFloorCalledQuery(int i)
{
boolean bAlreadyInQue = false;

for (int j = 0; j < _vFloorCalledQuery.size(); j++)
{
if (_vFloorCalledQuery.elementAt(j) == i)
{
bAlreadyInQue = true;
}

if (!bAlreadyInQue)
{
_vFloorCalledQuery.add(i);
// How do I sort this integer vector so the elements are in a proper order?
}

}

} // adds to which floor is called

public Vector getFloorCalledQuery() { return _vFloorCalledQuery ; } //returns a Vector of floors called in que

public void moveElevator(int iNumberOfFloors, int iCurrentFloorFromPressedButton )
{
boolean bDirectionOfElevator = true; // true means elevator going up, false means elevator going down
boolean bReachedElevatorFloor = false;

if (_bWorking )
{
if (_bDoorOpened)
{
_bDoorOpened = false; //close the door
}

if (_iCurrentFloor == iCurrentFloorFromPressedButton)
{
_bDoorOpened = true; //open the door, it’s the same floor
}
else
{
if (iCurrentFloorFromPressedButton – _iCurrentFloor > 0)
{
// elevator is moving upwards
bDirectionOfElevator = true;
for (int i=_iCurrentFloor; i< iNumberOfFloors; i++)
{
if (_iCurrentFloor == iCurrentFloorFromPressedButton )
{
// reached floor
while (!bReachedElevatorFloor)
{
// haven’t reached floor, need to check the next floor and then see if that floor is in the que
if (_vFloorCalledQuery.size() > 0)
{
for (int k=0; k < _vFloorCalledQuery.size(); k++)
{
if(_iCurrentFloor == _vFloorCalledQuery.elementAt(k))
{
_bDoorOpened = true;
// HOW DO I ADD ANOTHER POSITION to the que??
}
}

}

}
}
bReachedElevatorFloor = true;
break;

}
}
else
{
// elevator is moving downwards

}

}

}
}

}

[upl-file uuid=9edab5a6-f14f-4511-9ccf-344f2da25a50 size=344B]Building.txt[/upl-file]

[upl-file uuid=a7e1fef0-8d09-4170-929f-d5b0169a6b97 size=4kB]Elevator.txt[/upl-file]

to post a comment
Java

0Be the first to comment 😎

×

Success!

Help @just_pino spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 6.16,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @nearjob,
tipped: article
amount: 1000 SATS,

tipper: @meenaratha,
tipped: article
amount: 1000 SATS,

tipper: @meenaratha,
tipped: article
amount: 1000 SATS,
)...