Определите, открыто ли место к моменту закрытия и открытия

#java #android-studio

Вопрос:

Допустим, у меня есть заведение, которое открывается в 8 и закрывается в 23, а время 22

Я хочу определить, близко ли это место в мое текущее время с помощью заявления if или любого другого.(Под местами я подразумеваю рестораны и т. Д.) Я пытался 22 <= 23 amp;amp; 22 >= 8 , но думаю, что это неправильно.

Формат времени таков hh.mm . Это будет иметь double значение. Например:

 Time = 23.59 means 23 hour 59 minutes
 

Может ли кто-нибудь помочь мне с этим упражнением?

Комментарии:

1. Моя математика неверна или мне кажется правильной? Почему ты думаешь, что это неправильно?

2. Отсутствие уверенности, я думаю, извините

3. Я думаю, что это неправильно, когда это сравнивается с другими местами, которые я пробовал, или что-то в этом роде, пожалуйста, проверьте это и скажите мне, будет ли это работать во всех местах, независимо от того, что, если они будут соответствовать одной и той же технике?

4. Будет ли время указано только hh или hh:mm также возможно? Что вы подразумеваете под местами?

5. Угловые ящики могут быть там. Например, ваше заведение открывается в 8 и закрывается в 00. В этом случае это приведет к неправильному ответу, если вы сразу же сравните его.

Ответ №1:

Вот подход, который вы используете:

 1: if opening time < current time < closing time
2:     return true
3: else
4:     return false
 

Ваш подход верен для общих тестовых случаев. Однако он не обрабатывает угловые случаи.


Угловые Шкафы

Случай 1:

 Inputs:
Opening time: 22.00    Closing time: 4.00    Current time: 23.00

Expected Output:
true

Output:
false
 

Случай 2:

 Inputs:
Opening time: 22.00    Closing time: 4.00    Current time: 2.00

Expected Output:
true

Output:
false
 

Алгоритм

 1: if opening time > closing time and current time < closing time
2:     current time  = 24
3: if opening time > closing time
4:     closing time  = 24
5: if opening time < current time < closing time
6:     return true
7: else
8:     return false
 

Я тестирую этот алгоритм на нескольких примерах тестов. Это сработало для всех них. Если вы обнаружите какие-либо проблемы, прокомментируйте, и я постараюсь их решить.