Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
bgm123
39 / 39 / 16
Регистрация: 29.01.2013
Сообщений: 277
#1

Вычислить время. Функция time - C++

02.02.2013, 17:03. Просмотров 763. Ответов 5
Метки нет (Все метки)

Всем привет. С помощью функции time требуется вычислить текущее время. Код я написал ниже. Мой код работает почти правильно, но количество часов почему-то меньше на 4, чем должно быть (см. фото). Остальные данные выводятся верно.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <time.h>
using namespace std;
 
 
int main(void){
    int min, sec, hour;
    time_t timer, hold;
 
    timer = time(NULL) % 86400;
    sec = timer % 60;
 
    hold = (timer - sec) / 60;  //количество часов и минут в минутах
    min = hold % 60;
    hour = (hold - min) / 60;
 
    
    cout << hour << ":" << min << ":" << sec << endl;
    
    return 0;
}
Миниатюры
Вычислить время. Функция time  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.02.2013, 17:03     Вычислить время. Функция time
Посмотрите здесь:

Функция time - C++
Я нахожу с 1970 до текущей даты: time_t a = time(NULL); cout&lt;&lt;&quot;Текущая дата, выраженная в часах:&quot; &lt;&lt;(a/3600)&lt;&lt;endl; как найти с...

Функция time() - C++
Из учебника Дейтелов, глава 6.7: Функция time (с аргументом 0, как написано в приведенном операторе) текущее время как число секунд,...

Как преобразовать время из строки в Unix Time? - C++
Получаю &quot;Sat, 18 Jul 2015 19:56:37 +0300&quot; Знаю что можно strptime или бустом, но какой шаблон для такого времени?

Что делает функция time? - C++
Объясните доступным языком, пожалуйста, в библиотеке time.h есть команда: time_t currentTime = time(0); Можно какую-то расшифровку или...

Функция time() работа с возвращённым значеним - C++
Привет всем!Хочу спросить вот о чём, никак не могу понять, как преобразовывается время возвращённое функцией time() из секунд в осмысленную...

Функция time(0) для чего тут нужна? - C++
Для чего функция time(0) тут нужна??? #pragma once #include &lt;iostream&gt; class CardPack { public: struct card {

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
bgm123
39 / 39 / 16
Регистрация: 29.01.2013
Сообщений: 277
02.02.2013, 17:16  [ТС]     Вычислить время. Функция time #2
Вот добавил комментарии к коду:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
int main(void){
    int min, sec, hour;
    time_t timer, hold;
 
    timer = time(NULL) % 86400; //время от 00:00:00 в секундах за последние сутки
 
    //переводи timer в нормальное время
 
    //получаем секунды
    sec = timer % 60;         
 
    //находим количество часов и минут в минутах
    hold = (timer - sec) / 60;  
 
    //находим количество минут
    min = hold % 60;
 
    //находим количество часов
    hour = (hold - min) / 60;
 
    //вывод всегда на 4 часа меньше. ПОЧЕМУ????
    cout << hour << ":" << min << ":" << sec << endl;
    
    return 0;
}
varostislav
3 / 3 / 0
Регистрация: 30.09.2012
Сообщений: 49
02.02.2013, 17:21     Вычислить время. Функция time #3
C++
1
hour = (hold - min) / 48;
bgm123
39 / 39 / 16
Регистрация: 29.01.2013
Сообщений: 277
02.02.2013, 17:27  [ТС]     Вычислить время. Функция time #4
Цитата Сообщение от varostislav Посмотреть сообщение
hour = (hold - min) / 48;
Почему так? Объясните.
varostislav
3 / 3 / 0
Регистрация: 30.09.2012
Сообщений: 49
02.02.2013, 17:33     Вычислить время. Функция time #5
ну, при таком изменении показывает правильное время
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.02.2013, 18:24     Вычислить время. Функция time
Еще ссылки по теме:

Функция time для вычисления скорости нахождения Определителя.Dev-C++7.3.1.3 - C++
Добрый день. Помогите немного подкорректировать код. В main'е switch'ом выбирается 3 пользовательских варианта: 1.Вычисление...

Функция, которая увеличивает на Т секунд время - C++
Описать процедуру IncTime (H, M, S, T), которая увеличивает на Т секунд время, заданное в часах Н, минутах М и секундах S (H, M и S-...

Функция выполняется не во время цикла - а после выхода из него - C++
В общем светодиоды должны загорать один за другим во время выполнения цикла, но они загораются все после окончания цикла. Подскажите как...

Какая функция читает внутреннее время компьютера в секундах? - C++
Какая функция читает внутреннее время компьютера в секундах? A) stime() B) time(SECONDS) C) time() D) time(NULL) ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
NoMasters
Псевдослучайный
1747 / 1090 / 71
Регистрация: 13.09.2011
Сообщений: 3,120
02.02.2013, 18:24     Вычислить время. Функция time #6
Цитата Сообщение от bgm123 Посмотреть сообщение
//вывод всегда на 4 часа меньше. ПОЧЕМУ????
UTC+4, не иначе. Системное время обычно считается по Гринвичу.
Yandex
Объявления
02.02.2013, 18:24     Вычислить время. Функция time
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru