Составьте программу, позволяющую определить, сколько времени студент решал эти задачи. - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Студент начал решать задачи данного урока программирования, когда электронные часы показывали h1 часов и min1 минут, а закончил, когда было h2 часов и min2 минут. Составьте программу, позволяющую определить, сколько времени студент решал эти задачи. (Будем считать, что задачи решались не дольше суток.)

Решение задачи: «Составьте программу, позволяющую определить, сколько времени студент решал эти задачи.»

textual
Листинг программы
#include <stdio.h>
 
int main(void) {
    int h1, m1, h2, m2, dm;
    
    while ( printf("Start time\nh: ") && scanf("%d", &h1) == 1 && printf("min: ") && scanf("%d", &m1) == 1
           && printf("Stop time\nh: ") && scanf("%d", &h2) == 1 && printf("min: ") && scanf("%d", &m2) == 1 ) {
        dm = ( h2 * 60 + m2 ) - ( h1 * 60 + m1 );
        printf("Result: %d hours, %d minutes.\n", dm / 60, dm % 60);
    }
    
    return 0;
}

Объяснение кода листинга программы

  1. Подключение стандартной библиотеки для работы с консолью
  2. Объявление переменных: h1, m1, h2, m2, dm (время начала и окончания в часах и минутах, разность в минутах)
  3. Ввод данных с помощью цикла while. Условие цикла — корректный ввод данных (ввод времени начала и окончания).
  4. Вычисление разности между временем окончания и временем начала.
  5. Вывод результата в формате часы минуты.
  6. Повтор цикла при успешном вводе данных.
  7. Возврат 0 для успешного завершения программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.167 из 5
Похожие ответы