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

Как перевести секунды в часы, минуты и секунды - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать програму плз http://www.cyberforum.ru/cpp-beginners/thread201775.html
Помогите плз написать програму для расчета: Z= 2sin2(a)+cos a
C++ Передача значений переменных функциями Подскажите пожалуйста, как реализовать эту функцию с помощью указателя (а не ссылки). int clearstr(student& a) { delete a.pi; delete a.famil; return 0; } student &link=pstr; http://www.cyberforum.ru/cpp-beginners/thread201770.html
Структуры C++
задана следующая структура: Ввести структуру(с полями число,месяц,год)для описания понятия дата.Составить 2 функции,которые: а)вычисляет интервал (в днях),прошедший между двумя датами; б)по порядковому номеру дня в году определяет число и месяц года,соответствующие этому дню; помогите пожалуйста)
Удаление каждого второго элемента линейного списка C++
нужно написать функцию удаления каждого 2 элемента списка, вот код по сути требуется только подставить функцию но вобще не получается её написать, ( в тексте функция del_every_2el вот в ней и надо записать ) заранее спасибо #include <iostream.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> struct Elem {int data; Elem*next;}; Elem*create (int n) {Elem*pb = new Elem; pb ->...
C++ Матрица и простые числа http://www.cyberforum.ru/cpp-beginners/thread201741.html
Ввести матрицу размерностью (m*n) Найти строку содержащую наибольшее количество простых чисел. Помгите пожалуйсто составить программу. Есле можете то с коментариями.
C++ Хто может помочь? Ребята помогите плз с контрольной. 3. Що виконує наступний оператор for (int s=0 , I=0 ; I<n ; I++) s+=a; 4. Написати програму для розрахунку Z= 2sin2(a)+cos a 5. У одновимірному масиві, який складається із N цілочислових елементів, вирахувати добуток позитивних елементів. подробнее

Показать сообщение отдельно
Evgeny_Maximenk
Сообщений: n/a
28.07.2013, 18:04     Как перевести секунды в часы, минуты и секунды
Я сначала пробовал решить эту задачу через приведение типа переменной double в int для получения остатка.

Но это решение не позволяет получить точное значение минут и секунд. ( Например при переводе 31600000 секунд, разница с правильным ответом составляет 40 секунд).

Не могу понять, где происходит утечка времени. Кто знает?

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <iostream>
 
using namespace std;
 
long seconds;
 
double days, hours, minutes; // прототипы промежуточных значений
 
double  hours1, minutes1, seconds1; // прототипы ответов
 
 
const int HoursInDay = 24;
 
const int MinutesInHour = 60;
 
const int SecondsInMinute = 60;
 
int main ()
{
cout << "Enter number of seconds:  ";
cin >> seconds;
 
minutes = seconds / SecondsInMinute; // сначала проводим промежуточные вычисления
 
hours = minutes / MinutesInHour;
 
days = hours / HoursInDay;
 
hours1 = (days - int(days)) * HoursInDay; // затем, путем смены типа данных, вычисляем 
// остаток и умножаем его на соответствующую константу.
 
minutes1 = (hours1 - int (hours1))* MinutesInHour;
 
seconds1 = (minutes1 -  int (minutes1)) * SecondsInMinute;
 
 
cout << int (days)<< "Days, " ;
 
cout << int (hours1) << "Hours, ";
 
cout << int (minutes1) << "Minutes, ";
 
cout << int (seconds1) << "Seconds ";
 
system ("pause");
 
return 0;}
 
Текущее время: 08:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru