forked from HoorAhmed1/Parking-Payment-System
-
Notifications
You must be signed in to change notification settings - Fork 0
/
BestFit.java
36 lines (31 loc) · 1.08 KB
/
BestFit.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package garageSystem;
public class BestFit extends ConfigurationInt {
@Override
public int chooseSlot(Vehicle passedVehicle, Slot slotArray[]) {
int i =0, ChosenID =-1;
for (i=0; i<slotArray.length ; i+=1){
if(slotArray[i].getSlotDepth() > passedVehicle.getVehicleDepth()
&& !slotArray[i].isFull() && slotArray[i].getSlotWidth() > passedVehicle.getVehicleWidth()){
ChosenID = i+1;
break;
}
}
if (ChosenID == -1){
return -1;
}
for ( i=i ; i<slotArray.length ; i+=1){
if((slotArray[i].getSlotDepth() > passedVehicle.getVehicleDepth()
&& slotArray[i].getSlotWidth() > passedVehicle.getVehicleWidth())&& !slotArray[i].isFull()){
//System.out.println(" in second loop ");
if (slotArray[i].getSlotDepth() < slotArray[ChosenID-1].getSlotDepth()
||slotArray[i].getSlotWidth() < slotArray[ChosenID-1].getSlotWidth() ){
if ((slotArray[i].getSlotDepth()*slotArray[i].getSlotWidth())<
(slotArray[ChosenID-1].getSlotWidth()*slotArray[ChosenID-1].getSlotDepth())){
ChosenID = i+1;
}
}
}
}
return ChosenID;
}
}