Какое время будут показывать часы через р ч q мин r с? - Pascal ABC

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

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

Помогите написать программу Текущее показание электронных часов: t ч (0 ≤ т ≤ 23) n мин (0 ≤ n ≤ 59) k с (0≤ k ≤ 59). Какое время будут показывать часы через р ч q мин r с?

Решение задачи: «Какое время будут показывать часы через р ч q мин r с?»

textual
Листинг программы
  1. var
  2. t,n,k,p,q,r,i: integer;
  3. begin
  4. i:=0;
  5. write('Введите t: ');
  6. readln(t);
  7. while (t<0) or (t>23) do begin
  8. write('Ошибка! "t" Введено некорректно! Введите "t" повторно: ');
  9. readln(t);
  10. end;
  11. write('Введите n: ');
  12. readln(n);
  13. while (n<0) or (n>59) do begin
  14. write('Ошибка! "n" Введено некорректно! Введите "n" повторно: ');
  15. readln(n);
  16. end;
  17. write('Введите k: ');
  18. readln(k);
  19. while (k<0) or (k>59) do begin
  20. write('Ошибка! "k" Введено некорректно! Введите "k" повторно: ');
  21. readln(k);
  22. end;
  23. write('Введите p: ');
  24. readln(p);
  25. while p<0 do begin
  26. write('Ошибка! Отрицательное "p"! Введите "p" повторно: ');
  27. readln(p);
  28. end;
  29. write('Введите q: ');
  30. readln(q);
  31. while q<0 do begin
  32. write('Ошибка! Отрицательное "q"! Введите "q" повторно: ');
  33. readln(q);
  34. end;
  35. write('Введите r: ');
  36. readln(r);
  37. while r<0 do begin
  38. write('Ошибка! Отрицательное "r"! Введите "r" повторно: ');
  39. readln(r);
  40. end;
  41. while r>=60 do begin
  42. r:=r-60;
  43. i:=i+1;
  44. end;
  45. if r+k>=60 then begin
  46. k:=r+k-60;
  47. q:=q+i+1;
  48. i:=0;
  49. end
  50. else begin
  51. k:=k+r;
  52. q:=q+i;
  53. i:=0;
  54. end;
  55. while q>=60 do begin
  56. q:=q-60;
  57. i:=i+1;
  58. end;
  59. if q+n>=60 then begin
  60. n:=q+n-60;
  61. p:=p+i+1;
  62. i:=0;
  63. end
  64. else begin
  65. n:=q+n;
  66. p:=p+i;
  67. i:=0;
  68. end;
  69. while p>=24 do p:=p-24;
  70. if p+t>=24 then t:=p+t-24
  71. else t:=p+t;
  72. writeln('Конечное время: ',t,' ч ',n,' мин ',k,' сек');
  73. end.

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

  1. Создается переменная t типа integer для хранения времени в часах.
  2. Выводится сообщение с запросом ввести значение t.
  3. Проверяется, что введенное значение t находится в диапазоне от 0 до 23. Если нет, то происходит повторный запрос и повторное чтение значения t.
  4. Создается переменная n типа integer для хранения времени в минутах.
  5. Выводится сообщение с запросом ввести значение n.
  6. Проверяется, что введенное значение n находится в диапазоне от 0 до 59. Если нет, то происходит повторный запрос и повторное чтение значения n.
  7. Создается переменная k типа integer для хранения времени в секундах.
  8. Выводится сообщение с запросом ввести значение k.
  9. Проверяется, что введенное значение k находится в диапазоне от 0 до 59. Если нет, то происходит повторный запрос и повторное чтение значения k.
  10. Создается переменная r типа integer для хранения времени в секундах.
  11. Выводится сообщение с запросом ввести значение r.
  12. Проверяется, что введенное значение r находится в диапазоне от 0 до 59. Если нет, то происходит повторный запрос и повторное чтение значения r.
  13. Если r больше или равно 60, то значение r уменьшается на 60, переменная i устанавливается в 1, и цикл продолжается.
  14. Если r меньше 60, то значение r увеличивается на i, и цикл продолжается.
  15. Если q больше или равно 60, то значение q уменьшается на 60, переменная i устанавливается в 1, и цикл продолжается.
  16. Если q меньше 60, то значение q увеличивается на i, и цикл продолжается.
  17. Если p больше или равно 24, то значение p уменьшается на 24, переменная i устанавливается в 1, и цикл продолжается.
  18. Если p меньше 24, то значение p увеличивается на i, и цикл продолжается.
  19. Если t больше или равно 24, то значение t уменьшается на 24, и цикл продолжается.
  20. Если t меньше 24, то значение t увеличивается на i, и цикл продолжается.
  21. Выводится сообщение с конечным временем в формате часы:минуты:секунды.

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


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

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

10   голосов , оценка 3.9 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы