Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.06;
Скачать: CL | DM;

Вниз

Вопрос по временным промежуткам   Найти похожие ветки 

 
DimonS ©   (2005-02-21 10:50) [0]

В общем, столкнулся с такой проблемой в своей программке. В программе заносятся Путевые листы водителей по времени выезда-возвращения. И вот собственно проблема: как выбрать из ПЛ ночной смены ночные часы? Например, водила работал с 20-00 до 8-00, а ночные часы считаются с 22-00 до 6-00. Причем водитель может работать не только с 20, но и позже, а также приехать раньше 6-00. Вот и нужно знать время работы, которое приходится на ночные часы и на обычные.
В общем, нигде не смог найти ответ, мож кто подскажет?


 
Eraser ©   (2005-02-21 11:03) [1]

DimonS ©

А при чём тут делфи?


 
Johnmen ©   (2005-02-21 11:09) [2]

Вычислить пересечение с 20-00 до 8-00 и с 22-00 до 6-00
В чем проблема то ?


 
Юрий Зотов ©   (2005-02-21 11:15) [3]

> DimonS ©   (21.02.05 10:50)  
> В общем, нигде не смог найти ответ...

Наверное, в Интернете искали, потому и не нашли.

Искать надо было в учебнике арифметики за второй класс. Там ответ точно есть.


 
DimonS ©   (2005-02-22 02:08) [4]

Johnmen ©
Это-то понятно, но вот как это реализовать с помощью Дельфей? пробовал, но получается слишком уж громоздкая процедура.

Юрий Зотов ©
Ну конечно, за 2 класс в учебнике это есть, но там не изучабт Паскаль. А мне именно в нем нужно это реализовать.


 
default ©   (2005-02-22 02:20) [5]

не позорь скорпионов:-)


 
Германн ©   (2005-02-22 02:20) [6]

2 DimonS ©   (21.02.05 10:50)  

Если параметры путевых листов заносятся в базу данных, то и ориентируйся на её возможности. (SQL и пр.) Если - нет, то приведи свои решения тут. Может помогут. А пока без конкретизации вопроса - ответа быть не может. Тем более, что и вопрос, как следует, не задан!


 
DimonS ©   (2005-02-22 08:08) [7]

Да, параметры заносятся в БД. Заносится время выезда и время возвращения. И вот как программно вычислить, входит ли промежуток времени между 22-00 и 6-00 в это время?

Т.е. такой пример. Выехал в 20-00 вернулся в 23-30. Естественно, ночное время получается 1-30 и 2 часа дневного. Или выехал в 23-30 и возврат в 5-30, то 6 часов ночного времени, а дневного нет. Как все это реализовать? Работаю с TTable.

Пробовал высчитывать по разнице времени, но получается громоздко.
Если не сложно, выложите хоть кусок кода, чтобы было на что ориентироваться. Просто я практически не сталкивался при программировании со временем.


 
Инструктор   (2005-02-22 08:21) [8]

Если Дельфи - то читаем DateTime routines. Это по F1. Для начала.


 
Erik1 ©   (2005-02-22 11:55) [9]

Просто работай с TDataTime и храни время вместе с датой, тогда от начала работы отними начала вечернего времени. Получиш чтото больше 0 есть ночные часы.


 
red_imp   (2005-02-22 12:03) [10]

А ты в каком управлении работаеш, потому что у меня приблизительно такаяже проблем а возникала  правда не помню как выкрутился но всетаки если интересно может поисчу. Я пишу прогу для расчета расписания движения електротранспорта, если ты ваяеш чтото подобное напиши бо интересно как с этой проблемой (расписание) справляються другие.
А твоя проблема решается гдето всего в 4-8 if


 
Alx2 ©   (2005-02-22 12:07) [11]

DimonS ©   (22.02.05 8:08) [7]

Отрезок [a,b] - ночные. [c,d] - отработанное водителем. Ищем пересечение [a,b] и [c,d] = [max(a,c),min(b,d)]


 
Александр Иванов ©   (2005-02-22 12:08) [12]

red_imp   (22.02.05 12:03) [10]
Не хотел бы я ездить этим "електротранспорта"


 
Alx2 ©   (2005-02-22 12:08) [13]

Пипец... "здравствуй, светлое будущее" началось...



Страницы: 1 вся ветка

Текущий архив: 2005.03.06;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.044 c
1-1108823266
Коля
2005-02-19 17:27
2005.03.06
есть StringGrid. как выделить текст в одной из ячеек програмно?


3-1107891165
Нонэйм
2005-02-08 22:32
2005.03.06
Проверка на кратность в триггере


1-1108846915
Shamansky
2005-02-20 00:01
2005.03.06
FastReports?


1-1109088260
MakedoneZ
2005-02-22 19:04
2005.03.06
Алгоритм Евклида


14-1108388462
palva
2005-02-14 16:41
2005.03.06
Непятничная задачка