Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
2 / 2 / 0
Регистрация: 03.12.2018
Сообщений: 46
1

Определить количество месяцев, дней, часов, минут и секунд до запуска космического корабля на текущий момент времени

12.02.2019, 10:37. Показов 1716. Ответов 2
Метки нет (Все метки)

Всем доброго времени суток!!
Прошу помощи с программой.

Для клуба любителей авиации и космонавтики написать программу расчета времени до старта. Исходные параметры: дата и время предстоящего запуска космического корабля. Результат: количество полных месяцев, дней, часов, минут и секунд до начала старта на текущий момент времени. Всю информацию представить в виде отдельных значений.

Жду любой помощи!
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.02.2019, 10:37
Ответы с готовыми решениями:

Сколько человек прожил месяцев, дней, часов, минут, секунд?
Написать программу, которая по введённому возрасту в годах (например, 18.5 лет) выводит сколько...

Возврат кол-ва лет, месяцев, дней, часов, минут, секунд между датами
Нужно написать функцию которая возвращает в виде символьной строки количество лет, месяцев, дней,...

Программа должна писать сколько лет, месяцев, дней, часов, минут, секунд прожил человек
Программа должна писать сколько лет,месяцев,дней,часов,минут,секунд прожил человек Вводится только...

Определить по времени T (в секундах) содержащееся в нем количество часов, минут и секунд
Написать программу, определяющую по времени T (в секундах) содержащееся в нем количество часов H,...

2
65 / 56 / 13
Регистрация: 16.03.2017
Сообщений: 426
12.02.2019, 14:47 2
Вот так можно посчитать оставшиеся секунды
C++ (Qt)
1
2
3
4
5
6
7
8
    QDate date1(2020,10,25);
    QTime teme1(23,10,54);
    QDateTime startDate(QDate(2019, 7, 20), QTime(8, 30, 50));
    QDateTime nowDateTime;
    nowDateTime = QDateTime::currentDateTime();
    QDateTime lastTime;
    long long lastTimeNumber;
    lastTimeNumber = nowDateTime.secsTo(startDate);
Добавлено через 8 минут
Если узнать остаток от деления полученных секунд на 60 , получим секунды, на 3600 получим минуты и т.д

Добавлено через 9 минут
C++ (Qt)
1
2
3
    qDebug()<<"sec"<<lastTimeNumber%60;
    qDebug()<<"min"<<(lastTimeNumber%3600)/60;
    qDebug()<<"hour"<<(lastTimeNumber%(60 * 60 * 24))/3600;
Добавлено через 7 минут
и забыл добавить, вставьте
C++ (Qt)
1
2
3
4
#include <QDateTime>
#include <QDate>
#include <QTime>
#include <QDebug>
2
2 / 2 / 0
Регистрация: 03.12.2018
Сообщений: 46
12.02.2019, 18:58  [ТС] 3
Огромное спасибо!!!

Добавлено через 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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include<stdio.h>
#include<time.h>
#include <iostream>
#include <math.h>
using namespace std;
char *wday[] = {"Воскресенье","Понедельник","Вторник",
                "Среда","Четверг","Пятница","Суббота",
                "Неизвестен"};
 
int main(void)
{
   struct tm time_check;
   int year,month,day,hour,min,sec;
   setlocale ( LC_ALL, "Russian");
   system("cls"); // очистка экрана
   
   const time_t curTime = time(NULL);// текущее системное время/дата, формат хранения в секундах
   char* dt = ctime(&curTime);// перевод в строку для вывода на экран
   cout << "Системное время и дата: " << dt << endl;
 
   struct tm *u;
   u = localtime(&curTime);
   cout << "Год: " << (*u).tm_year + 1900 << endl;
   cout << "Месяц: " << (*u).tm_mon + 1 << endl;
   cout << "День: " << (*u).tm_mday << endl;
   cout << "День недели: " << u->tm_wday << endl;
   cout << "Время: " << u->tm_hour << ":" << u->tm_min << ":" << u->tm_sec << endl;
   cout << "Летнее время: " << u->tm_isdst << endl;
 
   cout<<"\n \n";
   printf("Год:  ");
   scanf("%d",&year);
   printf("Месяц:  ");
   scanf("%d",&month);
   printf("День:  ");
   scanf("%d",&day);
   printf("Час:  ");
   scanf("%d",&hour);
   printf("Минуты:  ");
   scanf("%d",&min);
   printf("Секунды:  ");
   scanf("%d",&sec);
   
  
   time_check.tm_year =year-(*u).tm_year ;
   if ((time_check.tm_mon = month-(*u).tm_mday)<0)  time_check.tm_mon =(*u).tm_mday-month;
   if ((time_check.tm_mday =day-(*u).tm_mday)<0)    time_check.tm_mday =(*u).tm_mday-day;
   if ((time_check.tm_hour =  u->tm_hour-hour)<0)   time_check.tm_hour =hour-u->tm_hour;
   if ((time_check.tm_min = u->tm_min-min)<0)       time_check.tm_min = min- (u->tm_min);
   if ((time_check.tm_sec = u->tm_sec-sec)<0)       time_check.tm_sec = sec-(u->tm_sec);
   time_check.tm_isdst = -1;
 
   cout<< "\nОсталось : \n"<< endl;
   cout<< "годов : "<< time_check.tm_year-1900<<  endl;
   cout<< " Месяцев: " <<time_check.tm_mon<<  endl;
   cout<< "Дней: "<< time_check.tm_mday <<  endl;
   cout<< "Часов: " << time_check.tm_hour <<  endl;
   cout<< "Минут: "<< time_check.tm_min <<  endl;
   cout<< "Секунд: "<< time_check.tm_sec<<  endl;
   
   return 0;
}
Вот, что получилось у меня
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.02.2019, 18:58

C клавиатуры вводится К-количество часов .Определить сколько полных часов ,минут,секунд
C клавиатуры вводится К-количество часов .Определить сколько полных часов ,минут,секунд (укзать в...

Подсчет дней, часов, минут и секунд в заданном интервале
Привет всем. Помогите пожалуйста сделать программу, которая считает кол-во дней, часов, минут,...

Сколько времени (рабочих часов/дней/месяцев/.) возьмет
Всем привет!!! Мне нужно знать сколько времени (рабочих часов/дней/месяцев/...) возьмет у опытного...

Функция перевода секунд в соответствующее количество часов, минут, секунд
Написать программу, в которой пользователь задаѐт количество секунд. Это значение передаѐтся...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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