Домашнее задание для ПО 2.11 по системному программированию от 22.02.21
учебно-методическое пособие

Склемин Алексей Анатольевич

Время задается в формате час, минута, секунда. Реализовать:

1) вычитание из времени указанного пользователем количества секунд;

2) подсчёт числа секунд между двумя моментами времени, лежащими в пределах одних суток.

Скачать:

ВложениеРазмер
Файл 54.docx15.34 КБ

Предварительный просмотр:

Пятьдесят четвертое задание

Время задается в формате час, минута, секунда. Реализовать:

1) вычитание из времени указанного пользователем количества секунд;

2) подсчёт числа секунд между двумя моментами времени, лежащими в пределах одних суток.


#include

#include

using namespace std;

struct Time

{

    int sec;

    int min;

    int hour;

};

Time inTime();

 

int main ()

{

    Time myTime = inTime();

    int numSec;

    cout << "Введите количество секунд: ";

    cin >> numSec;

    assert(numSec >= 0);

 

    int res = (myTime.sec + (myTime.min  * 60) + (myTime.hour * 3600) - numSec); // перевод в секунды

    myTime.hour = res / 3600;

    myTime.min = (res %= 3600) / 60;

    myTime.sec = res % 60;

    cout << "Оставшееся время: " << myTime.hour << ":" <

 

    cout << "Введите первый момент времени\n";

    Time myTime1 = inTime();

    cout << "Введите второй момент времени\n";

    Time myTime2 = inTime();

    int sec1 = (myTime1.sec + (myTime1.min  * 60) + (myTime1.hour * 3600)),

        sec2 = (myTime2.sec + (myTime2.min  * 60) + (myTime2.hour * 3600));

    if (sec1 > sec2)

        sec1 -= sec2;

    else

        sec1 = sec2 - sec1;

    cout << "Количество секунд между введенными моментами времени: " << sec1 << endl;

  return 0;

}

Time inTime()

{

    Time t;

    cout << "Введите значения времени!\n>> часы: ";

    cin >> t.hour;

    assert(t.hour >= 0 && t.hour <= 24);

    cout << ">>минуты: ";

    cin  >> t.min;

    assert(t.min >= 0 && t.min < 60);

    cout << ">>секунды: ";

    cin >> t.sec;

    assert(t.sec >= 0 && t.sec < 60);

return t;

}


По теме: методические разработки, презентации и конспекты

Домашнее задание для ПО 1.11 по системному программированию от 04.02.20

Шестнадцатеричное представление Представим, что необходимо просмотреть содержимое некотоpых байт в памяти. Требуется oпределить содержимое четырех последовательных байт (двух слов), которые имеют двои...

Домашнее задание для ПО 1.11 по системному программированию от 11.02.20

Сегменты Сегментом называется область, которая начинается на границе параграфа, то есть, по любому адресу, который делится на 16 без остатка. Хотя сегмент может располагаться в любом месте памяти и им...