на засчитывает 4 и 5 условия,хотя должны, несколько раз дебажил и всё выполнялось, но засчитывать не хочет
package com.javarush.task.pro.task09.task0920;
/*
Абордаж
*/
import java.util.Arrays;
public class NimrodAi {
public static String[] diningRoom = {
"button for emergency meeting",
"table", "table", "table", "table", "table",
"bench", "bench", "bench", "bench", "bench", "bench", "bench", "bench", "bench", "bench",
"bench", "bench", "bench", "bench", "bench", "bench", "bench", "bench", "bench", "bench"};
public static String[] o2 = {"plant", "plant"};
public static String[] medRoom = {"bed", "bed", "bed", "bed", "SCAN-MO-TRON-2000", "liquid analyser"};
public static String[] armoury = {"cannon launcher", "chair"};
public static String[] securityRoom = {"rack", "rack", "table"};
public static String[] reactor = {};
public static String[] telecom = {"computer", "computer", "computer", "table", "chair"};
public static String[] warehouse = {
"container", "container", "container",
"box", "box", "box", "box", "box", "box",
"barrel", "barrel", "barrel", "barrel"};
public static String[] controlRoom = {"interactive ship map", "chair", "chair", "chair"};
public static String[] powerRoom = {"power lamp", "power lamp", "power lamp", "power lamp", "power lamp", "power lamp", "power lamp"};
public static void main(String[] args) {
//напишите тут ваш код
if (checkPirates("diningRoom")) {
openFloodgates("diningRoom");
} if (checkPirates("o2")) {
openFloodgates("o2");
} if (checkPirates("medRoom")) {
openFloodgates("medRoom");
} if (checkPirates("armoury")) {
openFloodgates("armoury");
} if (checkPirates("securityRoom")) {
openFloodgates("securityRoom");
} if (checkPirates("reactor")) {
openFloodgates("reactor");
} if (checkPirates("telecom")) {
openFloodgates("telecom");
} if (checkPirates("warehouse")) {
openFloodgates("warehouse");
} if (checkPirates("controlRoom")) {
openFloodgates("controlRoom");
} if (checkPirates("powerRoom")) {
openFloodgates("powerRoom");
}
}
private static boolean isThereUnregisteredThungs(String[] room, String[] scanResult){
for (int i = 0; i < room.length; i++) {
if ( !(room[i].equals(scanResult[i])) ){
return true;
}
}
return false;
}
public static boolean checkPirates(String roomName) {
String[] room = getRoomByName(roomName);
String[] scanResult = RoomScanner.scanRoom(roomName);
System.out.printf("В %s обнаружено: %s\n", roomName, Arrays.toString(scanResult));
//напишите тут ваш код
if (room.length < scanResult.length){
return true;
} if (isThereUnregisteredThungs(room,scanResult)){
return true;
}
return false;
}
public static void openFloodgates(String roomName) {
System.out.printf("ВНИМАНИЕ, открытие шлюзов в %s\n\n", roomName);
Arrays.fill(getRoomByName(roomName), null);
}
public static String[] getRoomByName(String roomName) {
//напишите тут ваш код
if (roomName.equals("diningRoom")) {
return diningRoom;
} else if (roomName.equals("o2")) {
return o2;
} else if (roomName.equals("medRoom")) {
return medRoom;
} else if (roomName.equals("armoury")) {
return armoury;
} else if (roomName.equals("securityRoom")) {
return securityRoom;
} else if (roomName.equals("reactor")) {
return reactor;
} else if (roomName.equals("telecom")) {
return telecom;
} else if (roomName.equals("warehouse")) {
return warehouse;
} else if (roomName.equals("controlRoom")) {
return controlRoom;
} else if (roomName.equals("powerRoom")) {
return powerRoom;
}
return null;
}
}