Форум программистов, компьютерный форум, киберфорум
Наши страницы

Преобразование секунд в года - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Реализовать подстановку кода с помощью препроцессора http://www.cyberforum.ru/cpp-beginners/thread1801830.html
Есть множество классов: class SomeClassName1 { ... } class SomeClassName2 { ... } ...
C++ Typedef для функций Здравствуйте! В книге Страуструпа в качестве примера приводится typedef для указателей на функции например: typedef void(*SIG_TYP) (int) , typedef int (*CFT)(const void*, const void*) Не совсем... http://www.cyberforum.ru/cpp-beginners/thread1801818.html
Что не так с этими указателями? C++
Всем привет, прошу помощи разобраться в коде. Недавно начал изучать C++ по книге Лафоре. В главе с указателями есть пример со связными списками. Вот его структура: struct node { int data;...
C++ Прервать цикл из цикла, вложенного в него
Приветствуют. Собственно, вопрос в названии темы. for(int i = 1; i <= 10; i++) for(int j = 1; j <= 5; j++) { if(/* здесь условие выхода из обоих циклов */) { /* как выйти сразу из 2-х...
C++ Тест. Подскажите где ошибка http://www.cyberforum.ru/cpp-beginners/thread1801758.html
1 ответ не правильный. Подскажите где ошибка.
C++ Typedef thiscall метода с переменным числом аргументов Добрый день. Хочу что то типа такого typedef void *(__thiscall *tThisCall)(void *, ...); tThisCall method; //... method(object, arg1, arg2); подробнее

Показать сообщение отдельно
castaway
Эксперт С++
4915 / 3023 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
02.09.2016, 20:52
Цитата Сообщение от Xessao Посмотреть сообщение
почему выводит 5 дней, вместо 0 (как я ожидаю)?
Потому что ты неправильно переводишь.
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
#include <cstdio>
#include <cstdint>
 
int main() {
    uint64_t total_seconds = 31536000 + 2592000 + 86400 + 3600 + 60 + 1;
 
    uint64_t years = total_seconds / 31536000 /* seconds in a year */;
    total_seconds %= 31536000;
 
    uint64_t months = total_seconds / 2592000 /* seconds in a month */;
    total_seconds %= 2592000;
 
    uint64_t days = total_seconds / 86400 /* seconds in a day */;
    total_seconds %= 86400;
 
    uint64_t hours = total_seconds / 3600 /* seconds in a hour */;
    total_seconds %= 3600;
 
    uint64_t minutes = total_seconds / 60 /* seconds in a minute */;
    total_seconds %= 60;
 
    uint64_t seconds = total_seconds;
 
    printf( "%llu.%llu.%llu %02llu:%02llu:%02llu\n", years, months, days, hours, minutes, seconds );
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru