Найти:
Закрытый вопрос

Ответы
0 AD AD

(если я правильно понял вопрос) В оффисных приложениях Microsoft дата представляет десятичную дробь. При этом целая часть - число дней прошедших с 31.12.1899 (т.е. 1 - 01.01.1900, 2 - 02.01.1900 и т.д.), дробная часть - соответствующая часть суток (например 0,25 - 6 часов утра, 0,5 - полдень). А сложение дат производится просто как сложение дробей с последующим переводом в формат даты. Получили 156,36 - отсчитываем 156 дней от 31.12.1899 (4.6.1900) 0,36 - часть суток из расчета 1=24 часа (т.е. 8 час 38 мин 24 сек)

Ответил: KwaK 2 года, 7 месяцев назад | Предложить дружбу | Добавить в эксперты

Пожаловаться на ответ
1 AD AD

Для форматирования дат и времени может быть применена функция Format. Эта функция преобразует число, дату или время в строку символов. Можно указать, сколько десятичных разрядов отведено на запись числа, нужны или нет лидирующие нули, замыкающие нули,разделители тысяч. Вот упрощенный синтаксис функции Format: Format(Выражение, Формат). Параметр Выражение определяет значение, которое требуется преобразовать. Параметр Формат – это текстовая строка, сформированная из символов: (0) – в этой позиции должен быть напечатан замыкающий или лидирующий ноль; (#) – в этой позиции не следует печатать замыкающий или лидирующий ноль; (.), (,),(-), (+), ($), ((), ()), (пробел) – эти символы печатаются в той позиции, где они указаны. Вот такой пример преобразования чисел функцией Format:

Обращение к функции Результат
   
   
   
   
Format ("27.09.2009","dd.mm.yy") 27.09.09
Format ("27.09.2009","dddd, dd mmmm, yyyy года") воскресение, 27 сентября, 2009 года

Ответил: SergEsenin 2 года, 7 месяцев назад | Предложить дружбу | Добавить в эксперты

Пожаловаться на ответ
5 AD AD

Тысячи программистов уже задавались этим вопросом, поэтому следует учесть 2 вещи:

- прежде чем написать что-то стоит поискать готовую реализацию

- общие положения о дате можно найти тут: http://www.opennet.ru/man.shtml?topic=time&category=7&russian=2

 

Очевидная математическая модель времени - число секунд, прошедших от начала эпохи (складывать и вычитать целые числа просто). Если точность до секунд не требуется, можно использовать число дней или лет.

Таким образом для выполнения операции "2009-09-26 + 1 день" нужно:

 * преобразовать операнды (символьные даты) в целые числа

 * сложить операнды по правилам сложения целых чисел

 * преобразовать результат сложения в дату

 

Алгоритм трансляции числа дней от начала эпохи в год, месяц, день и обратно был предложен в 1582 папой Григорием XIII http://ru.wikipedia.org/wiki/%D0%93%D1%80%D0%B8%D0%B3%D0%BE%D1%80%D0%B8%D0%B0%D0%BD%D1%81%D0%BA%D0%B8%D0%B9_%D0%BA%D0%B0%D0%BB%D0%B5%D0%BD%D0%B4%D0%B0%D1%80%D1%8C


Тысячи программистов уже задавались этим вопросом, поэтому следует учесть 2 вещи:

- прежде чем написать что-то стоит поискать готовую реализацию

- общие положения о дате можно найти тут: http://www.opennet.ru/man.shtml?topic=time&category=7&russian=2

Ответил: edhelwen 2 года, 7 месяцев назад | Предложить дружбу | Добавить в эксперты

Пожаловаться на ответ
3 AD AD

Сначала нужно выяснить формат этих дат. Например в Delphi есть такой формат TDateTime. В нем даты хранятся в вещественном виде и обозначают, сколько времени прошло с определенной даты. При чем целая часть показывает число полных дней, а вещественная - количество часов, минут и секунд. Чтобы прибавить к такой дате день(24 часа), нужно прибавить 1, пол дня (12 часов) - прибавить 1/2, 1 час - 1/24, 1 минуту - 1/1440. А в сложении абсолютных дат нету никакого толку, гораздо полезнее вычитать такие даты.

 

Ответил: pahasuper 2 года, 7 месяцев назад | Предложить дружбу | Добавить в эксперты

Пожаловаться на ответ
Темы
Сообщества
Теги
.NET 1C 3D Active Directory C C#.NET C++ C++ Builder Delphi DreamSpark ERP Ethernet EXCEL firefox HTML HTML@ intuit.ru java JavaScript Linux Mac OS Microsoft Vista Microsoft Windows Microsoft Windows XP Pro Microsoft XP OpenOffice.org Pascal PHP service desk shell SQL unix web Wi-Fi Word WWW администрирование алгоритм алгоритмы английский язык анимация аппаратура архитектура ЭВМ архитектурное моделирование базы данных безопасность беспроводные технологии веб-дизайн верстка видео Видео курс видеокурсы вирусы Вопрос администрации сайта второе высшее высшее образование графика графические форматы диплом дипломы дистанционное обучение документооборот дополнительное образование естественные языки запуск программ игры интелект интеллект интернет интерфейсы интуит информатика исследования история кадры кибернетика книги командная строка компании компиляторы компоненты компьютерные сети консультанты конфиденциальность корпоративные системы криптография крэкинг курсы Локалные сети Локальная версия маршрутизация математика машииное обучение машинное обучение начинающий программист нейронные сети низкоуровневое ПО новейшие разработки новые учебные программы ноутбуки образование обучение объектно-ориентированное программирование объявления оплата оплата сертификата офис память печать пиратство поиск работы получение сертификата предложение предложения Принтеры программирование программное обеспечение проектирование работа сайта разное разработка приложение регистрация реляционные решение робот робототехника сайт сертификат сертификация сетевые операционные системы системы программирования спам текстовые редакторы текстуры телекоммуникационные сети телефония теория теория приближений трояны управление контентом учебная программа учебники учебные курсы учебные программы форматы данных цвета человеко-машинное взаимодействие электронные таблицы электронные учебники Эффективность Эффективность ИТ ядро языки программирования
Вопросы Темы Теги Сообщества Рейтинги Обратная связь Помощь © 2012, Интернет-Университет Информационных Технологий
Проект Издательства "Открытые Системы".
Партнеры: РМ Телеком, KRAFTWAY COMPUTERS.
Rambler's Top100