Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2021, 00:38   #1
kottion
Пользователь
 
Регистрация: 24.10.2021
Сообщений: 10
По умолчанию си\си++, временной промежуток между датами

собственно ,условие задачи на фото
вот мой код,в чем собственно проблема
Я не очень разобрался со временем и днями
оно выдает ответ на +1
я не очень понимаю, почему так
я понимаю, что из-за того что в дне часы по условию идут с 1,но не понимаю...
Код:
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <stdio.h>
int main()
{
    int H1, m1, D1, M1, H2, m2, D2, M2 ;
    scanf("%d %d %d %d", &H1, &m1, &D1, &M1);
    scanf("%d %d %d %d", &H2, &m2, &D2, &M2);
    if ((M1 - M2) != 0) {
        printf("Month: %d\n", M2 - M1);
    }
    if ((D2 - D1) != 0) {
        if (D2 > D1) {
            printf("Day: %d\n", D2 - D1 - 1);
        }
        else {
            int t = 30 - D1 + D2 - 1;
            printf("Day: %d\n", t);
        }
    }
    if ((H2 - H1) != 0) {
        if (H2 > H1) {
            printf("Hour: %d\n", H2 - H1);
        }
        else {
            int y = 24 - H1 + H2 - 1;
            printf("Hour: %d\n", y);
        }
    }
    if ((m2 - m1) != 0) {
        if (m2 > m1) {
            printf("Minute: %d\n", m2 - m1);
        }
        else {
            int y = 60 - m1 + m2 ;
            printf("Minute: %d\n", y);
        }
    }
    return 0;
}
Изображения
Тип файла: png 2021-10-24_00-34-23.png (45.3 Кб, 0 просмотров)

Последний раз редактировалось BDA; 24.10.2021 в 04:30.
kottion вне форума Ответить с цитированием
Старый 24.10.2021, 04:32   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Вы производите заем времени из более старшего разряда (месяца, дня или часа), но не учитываете этого в нем.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 24.10.2021, 11:52   #3
kottion
Пользователь
 
Регистрация: 24.10.2021
Сообщений: 10
По умолчанию

ааааа
понял
спасибо большое)
kottion вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод содержимого файла. Временной промежуток Canabalt C++ Builder 0 04.01.2013 14:24
найти разницу между двумя датами, а результат записать в письменном виде, так чтобы было согласование между падежами KatanaZh Microsoft Office Excel 15 27.11.2012 00:11
Обновление связей между файлами через заданный промежуток времени alleo Microsoft Office Excel 2 21.10.2010 13:39
Промежуток между картинкой и div shevron HTML и CSS 4 04.09.2010 15:03
Как сделать промежуток между строчек в абзаце? iukash HTML и CSS 2 25.09.2009 13:25