Господа.
Проверяю ручками - все правильно работает.
Почему-то не проходит три последние проверки. ЧЯДНТ?
35 строка
if (minutesMod >= 0 & minutesMod <= 3) {package com.javarush.task.task04.task0416;
/*
Переходим дорогу вслепую
*/
import java.io.*;
import java.util.Scanner;
public class Solution {
public static void main(String[] args) throws Exception {
System.out.println(DetectTrafficLightColor(InputMinutes()));
}
//ввод минут с клавиатуры
private static float InputMinutes() {
float minutes = 0;
while (true) {
try {
Scanner sc = new Scanner(System.in);
minutes = sc.nextFloat();
break;
} catch (Exception e) {
//ловим эксепшн, если вдруг вводят что-то вместо флоата
System.out.println("надо цифры вводить, а не вот это вот все");
}
}
return minutes;
}
private static String DetectTrafficLightColor(float minutes){
float minutesMod = minutes % 5;
//каждые 5 минут перезапускается цикл
if (minutesMod > 0 & minutesMod <= 3) {
return "зелёный";
//первые три минуты в каждом цикле горит зеленый
} else if (3 < minutesMod & minutesMod <=4) {
return "жёлтый";
//с 3 по 4 - желтый
} else return "красный";
//с 4 по 5 - красный
}
}