Определить время приземления самолета в часах, минутах и секундах по времени вылета и длительности полета - Pascal
Формулировка задачи:
1. Определить время приземления самолета в часах X, минутах Y и секундах Z. Известно, что самолет вылетел в X0 часов, Y0 минут и Z0 секунд и находился в воздухе Q секунд. Учесть переход времени на другие сутки.
Решение задачи: «Определить время приземления самолета в часах, минутах и секундах по времени вылета и длительности полета»
textual
Листинг программы
var x0,y0,z0,q,x,y,z,s:integer; begin repeat writeln('Введите показания часов часы, минуты и секунды:'); readln(x0,y0,z0); until(x0 in [0..23])and(y0 in [0..59])and(z0 in [0..59]); repeat writeln('Введите добавленное время в секундах:'); readln(q); until q>0; s:=3600*x0+60*y0+z0+q; z:=s mod 60;//секунды y:=s div 60 mod 60; x:=s div 3600 mod 24; writeln('Время приземления:'); if x<10 then write('0',x,':') else write(x,':'); if y<10 then write('0',y,':')else write(y,':'); if z<10 then write('0',z) else write(z); end.
Объяснение кода листинга программы
- Объявление переменных:
x0
- начальные часыy0
- начальные минутыz0
- начальные секундыq
- добавленное время в секундахx
- часы приземленияy
- минуты приземленияz
- секунды приземленияs
- общее время в секундах
- Запрос на ввод начального времени:
Повторять следующие действия, пока введенные значения не удовлетворяют условиям (часы от 0 до 23, минуты и секунды от 0 до 59):
- Выводит текст
Введите показания часов часы, минуты и секунды:
- Считывает введенные значения в переменные
x0
,y0
иz0
- Выводит текст
- Запрос на ввод добавленного времени:
Повторять следующие действия, пока введенное значение
q
больше нуля:- Выводит текст
Введите добавленное время в секундах:
- Считывает введенное значение в переменную
q
- Выводит текст
- Вычисление времени приземления:
- Вычисляет общее время полета в секундах и сохраняет в
s
- Находит секунды приземления как остаток от деления
s
на 60 - Находит минуты приземления как остаток от деления результата деления
s
на 60 - Находит часы приземления как остаток от деления результата деления
s
на 3600
- Вычисляет общее время полета в секундах и сохраняет в
- Вывод времени приземления:
- Если часы приземления меньше 10, то выводит
0
и значение часов, иначе выводит значение часов - Если минуты приземления меньше 10, то выводит
0
и значение минут, иначе выводит значение минут - Если секунды приземления меньше 10, то выводит
0
и значение секунд, иначе выводит значение секунд - Завершает выполнение программы.
- Если часы приземления меньше 10, то выводит
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д