package com.javarush.task.task04.task0416;
/*
Переходим дорогу вслепую
*/
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader r = new BufferedReader(new InputStreamReader(System.in));
double t = Double.parseDouble(r.readLine());
int a = (int)t;
if(a<60&&a>=0){
if(a%5>=0&&a%5<3){System.out.println("зелёный");}
else if(a%5==3){System.out.println("жёлтый");}
else if(a%5==4){System.out.println("красный");}
}
}
}
Владимир Фоменко
15 уровень
Да что не так то опять не пойму?
Решен
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Нурлан
16 января 2020, 18:29
у тебя с остатками проблема.
Первый остаток норм.
Второй должен быть a%5>=3 && a%5<4 (ты смотришь в промежутке от 3 и до 4, при этом 4 не входит, от 3, 3.1 , 3.2, 3.3 .......3.9, 3.91 ....3.9999999 и т.д.)
Третий остаток a%5>=4 && a%5<5 ( здесь тоже самое 4, 4.1, 4.2 ....4.9)
Т.к. у тебя дробные числа и остаток может быть 3.4 или 4.5.
+1
Владимир Фоменко
16 января 2020, 23:33
Вот поэтому я пробовал в инт перевести, чтоб не парится с дробной частью, но такая моя импровизация не прошла проверку
0
IceBergMaster
16 января 2020, 23:41
Импровизация нормальная, только убери
+1
Виталий
16 января 2020, 15:30
Double a = t%5;
дальше сравнивай.
и первый if в данном случае вообще не нужен.
+1
Виталий
16 января 2020, 15:27
во-первых зачем пепеводишь в инт?
+1