Методические указания по выполнению лабораторных работ по курсу "Эксплуатация и обслуживание ГКМ", страница 10

Задание 2.

Задание 2 имеет учебной целью закрепление пройденного материала по темам  «Линейные алгоритмы», «Ввод-вывод данных», «Стандартные типы переменных и математические операции над ними», «Организация ветвей. Условный оператор».

Условие задания 2. В некоторый момент времени часы показывают h1 часов, m1 минут, s1 секунд. Составить программу определения показания часов через s2 секунд.

Ход выполнения задания. Необходимо составить алгоритм решения поставленной задачи и затем реализовать его с помощью языка Pascal.

Введенные пользователем значения времени сохраним в переменных h1, m1, s1. Количество добавленных секунд будем хранить в переменной s2. Эти переменные будут принимать целое значение, следовательно, тип переменных – integer.  Использованные переменные необходимо описать в секции описания переменных. Эта секция начинается со служебного слова var (строка 2 в примере ниже).

Для решения поставленной задачи, необходимо предусмотреть ввод исходных данных. Эта процедура аналогична описанной в задании 1 (строки 4-11).

В строке 12 введенное пользователем (значение сохранено в переменной s2) и исходное (значение сохранено в переменной s1) количество секунд суммируется. В условном операторе (строка 13) проверяется условие s1>60  , так как количество секунд не может превышать или быть равным 60. Если это условие истинно, то необходимо увеличить количество минут (переменная m1, строка 14) на результат целочисленного деления. Операция div вычисляет целую часть частного, а его остаток можно найти с помощью операции mod. В строке 15 найденный остаток присваивается переменной, в которой хранится значение количества секунд. Аналогичные действия выполняются в строках 17-20 для вычисления количества часов и минут.

Полученный результат выводится на экран оператором Writeln (строка 21). В этом операторе выводятся как значения переменных h1,m1,s1. Между ними расположены в одинарных кавычках точки. Это сделано для того, чтобы на экране между числами были показаны точки, которые будут служить разделителями между числами для соблюдения привычного вида отображения времени. Пустой (без параметров в скобках) оператор  Readln предназначен для того, чтобы программа остановилась и ожидала нажатия  пользователем клавиши Enter.

1  

programlab2;

2  

var h,m,s,h1,m1,s1,h2,m2,s2:integer;

3  

begin

4  

writeln('Введите текущее время: часы');

5  

readln(h1);

6  

writeln('Введите минуты');

7  

readln(m1);

8  

writeln('Введите секунды');

9  

readln(s1);

10   

writeln ('Введите количество добавленных секунд ');

11   

readln(s2);

12   

s1:=s1+s2;

13   

if s1>60 then begin

14   

m1:=m1+(s1 div 60);

15   

s1:=s1 mod 60;

16   

end;

17   

if m1>60 then begin

18   

h1:=h1+(m1 div 60);

19   

m1:=m1 mod 60;

20   

end;

21   

writeln(h1,'.',m1,'.',s1,'.');

22   

readln;

23   

end.

Задание 3.

Задание 3 имеет учебной целью закрепление пройденного материала по темам  «Линейные алгоритмы», «Ввод-вывод данных», «Стандартные типы переменных и математические операции над ними», «Организация ветвей. Условный оператор».

Условие задания 3.
 Составить программу, проверяющую принадлежность точки с координатами  заштрихованной области на плоскости: