Поменять местами значения двух переменных можно двумя способами − через промежуточную переменную или без нее. Напишем процедуру, соответствующую первому способу.
Procedure Swap (Var х, у:Integer);
Var z: Integer;
Begin
z:=x; x:=y; y:=z;
End;
Процедура называется Swap. У нее имеется два формальных параметра, которые являются параметрами переменными, так как необходимо поменять значения переменных и запомнить изменения. Эти параметры являются результатами выполнения процедуры.
В процедуре описана переменная z, которая используется как промежуточная.
Вся программа имеет вид:
Program Example_71;
Var a, b: Integer;
Procedure Swap(Varx, y: Integer);
Var z: Integer;
Begin
z:=x; x:=y; y:=z;
End;
Begin
Writeln('Введите значения
переменных а и b');
Readln(а, b);
Swap(a, b); {обращение к процедуре}
Writeln('а= ', а, ' b= ',b);
{вывод новых значений}
Readln;
End.
Пример 3
Вычислить суммарное количество секунд, соответствующее заданному числу часов, минут и секунд, и, наоборот, определить, сколько часов, минут и секунд содержится в заданном числе секунд.