Приветствую! Долго решал эту задачу, даже откладывал, но в итоге пришел к такому решению. Подставляя любое число - выводит всё правильно, но почему же ругается на желтый и зеленый? Вот моя логика решения:
if (t > 0) //решил начать с этого, ведь время не может быть 0
далее идёт красный. почему? если начать с %3, то не дойдем до %4 и %5 это решение принято
if ((t % 5 >= 4) && (t % 5 < 5)) //соответствует условию. От 4 до <5 красный.
System.out.println("красный");
далее идёт абсолютная копия, только с условием желтого на %4 решение не принимает
else if ((t % 4 >= 3) && (t % 4 < 4)) //соответствует условию. От 3 до <4 желтый.
System.out.println("жёлтый");
далее идёт %3 <3
else if (t % 3 < 3)
System.out.println("зелёный");
Что не так с решением? Ведь если мы подставим любое число, ответ будет верным и вывод соответствующего условию цвета. Но от чего зеленый и желтый не принимаются? ПОМОГИТЕ!)))