Дата, время, сравнение, получение, установка.

wasiliysoft
Сообщения: 9
Зарегистрирован: 11 фев 2015, 18:58
Контактная информация:

Re: Дата, время, сравнение, получение, установка.

Сообщение wasiliysoft » 11 фев 2015, 22:18

Вот такая штука на PHP вроде работает как нужно, буду переводить в JAVA)
[syntax=php]<?
$hour = 7; $minutes =0 ;

$begin_user_hour = 23; $begin_user_minutes = 0;
$end_user_hour = 8; $end_user_minutes = 0;

if ($hour >= $begin_user_hour){
if ($minutes >= $begin_user_minutes) die("тихие часы");
} else{
if ($hour < $end_user_hour) die("тихие часы");
if ($hour == $end_user_hour){
if ($minutes < $end_user_minutes) die("тихие часы");
}
}
echo "ура, уже день";
?>[/syntax]

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Дата, время, сравнение, получение, установка.

Сообщение doter.ua » 11 фев 2015, 22:38

wasiliysoft писал(а):Вот такая штука на PHP вроде работает как нужно, буду переводить в JAVA)
[syntax=php]<?
$hour = 7; $minutes =0 ;

$begin_user_hour = 23; $begin_user_minutes = 0;
$end_user_hour = 8; $end_user_minutes = 0;

if ($hour >= $begin_user_hour){
if ($minutes >= $begin_user_minutes) die("тихие часы");
} else{
if ($hour < $end_user_hour) die("тихие часы");
if ($hour == $end_user_hour){
if ($minutes < $end_user_minutes) die("тихие часы");
}
}
echo "ура, уже день";
?>[/syntax]
Начало в 8 утра, конец в 18 (Ночной образ жизни, бывают разные профессии у людей, вполне реальная ситуация). Такой вариант уже ломает этот алгоритм.

Код: Выделить всё

if ($hour >= $begin_user_hour){
      if  ($minutes >= $begin_user_minutes) die("тихие часы");
}   
21 вечера - это больше чем начало Тихих часов, но они закончатся в 18, значит уже обычное время, а "твой" алгоритм думает иначе.
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

wasiliysoft
Сообщения: 9
Зарегистрирован: 11 фев 2015, 18:58
Контактная информация:

Re: Дата, время, сравнение, получение, установка.

Сообщение wasiliysoft » 12 фев 2015, 15:50

Спасибо за замечание! буду думать)

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Дата, время, сравнение, получение, установка.

Сообщение doter.ua » 12 фев 2015, 16:05

wasiliysoft писал(а):Спасибо за замечание! буду думать)
Я предыдущим постом выдвигал идею реализации.
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

wasiliysoft
Сообщения: 9
Зарегистрирован: 11 фев 2015, 18:58
Контактная информация:

Re: Дата, время, сравнение, получение, установка.

Сообщение wasiliysoft » 13 фев 2015, 15:30

А как быть если НТЧ установлен на 01:00? уже 3 день бьюсь не могу реализовать алгоритм, пока сделал только ограниченный в выборе НТЧ и КТЧ, то есть юзер может выбрать только из того что я предложу

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Дата, время, сравнение, получение, установка.

Сообщение doter.ua » 13 фев 2015, 15:47

wasiliysoft писал(а):А как быть если НТЧ установлен на 01:00? уже 3 день бьюсь не могу реализовать алгоритм, пока сделал только ограниченный в выборе НТЧ и КТЧ, то есть юзер может выбрать только из того что я предложу
Лучше вообще сделать только Начало и длительность ТЧ: например в 18:00, 4 часа. Пусть юзеры сами считают.

P.S. Сначала проверяй, что больше НТЧ или КТЧ, а потом уже две разных реализации.
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

wasiliysoft
Сообщения: 9
Зарегистрирован: 11 фев 2015, 18:58
Контактная информация:

Re: Дата, время, сравнение, получение, установка.

Сообщение wasiliysoft » 13 фев 2015, 22:01

Лучше вообще сделать только Начало и длительность ТЧ: например в 18:00, 4 часа. Пусть юзеры сами считают.
:D вот это идея мне по душе! Дерзко со стороны разработчика но надежно ;)

wasiliysoft
Сообщения: 9
Зарегистрирован: 11 фев 2015, 18:58
Контактная информация:

Re: Дата, время, сравнение, получение, установка.

Сообщение wasiliysoft » 14 фев 2015, 02:35

Имеем PHP код который работает при следующих условиях
// Начало тихих часов min 18:00 max 04:00 ($begin_silent_time)
// Конец тихих часов min 05:00 max 17:00 ($end_silent_time)
// Время берётся в формате чисел, например 01:30 будет как 130 а 17:30 будет как 1730

[syntax=php]
<?
if (1800 <= $begin_silent_time and $begin_silent_time < 2400) {
if ($time < $begin_silent_time and $time >= $end_silent_time) return = true;
}
if (0 <= $begin_silent_time and $begin_silent_time < 1800) {
if ($time < $begin_silent_time or $time >= $end_silent_time) return = true;
}
return false;
?>
[/syntax]

а теперь вопрос правильно ли я перевел его в JAVA (интересует перевод "and" и "or"
[syntax=java]
if (1800 <= begin_silent_time & begin_silent_time < 2400) {
if (time < begin_silent_time & time >= end_silent_time) return = true;
}

if (0 <= begin_silent_time & begin_silent_time < 1800) {
if (time < begin_silent_time | time >= end_silent_time) return = true;
}
return false;
[/syntax]

Ответить