Может ли функция возвращать два значения? - Turbo Pascal
Формулировка задачи:
Есть некоторая функция F. У неё входные параметры - t, x.
Выходные: xp[1], xp[2], где
xp[1]:=t*x;
xp[2]:=t+x;
В дальнейшем xp[1] и xp[2] будут используются в головной программе.
Как сделать, чтобы функция вернула и значение xp[1], и значение xp[2]?
Не хочу разбивать функцию на две.
Решение задачи: «Может ли функция возвращать два значения?»
textual
Листинг программы
function xp(t,x:longint;var x2:longint):longint; begin xp:=T*X; x2:=T+x; end; begin readln(t,x); p:=xp(t,x,x2); write(p,' ',x2); readln; end.
Объяснение кода листинга программы
Функция xp
принимает три аргумента типа longint
и возвращает longint
. Она выполняет следующие действия:
xp
присваивает значениеT * X
переменнойxp
.x2
присваивает значениеT + x
переменнойx2
.xp
возвращает значениеxp
.- В функции
main
считываются два аргумента типаlongint
с помощью функцииreadln
. - Переменная
p
присваивается значению, возвращаемому функциейxp
с аргументамиt
,x
иx2
. - Значение переменной
p
выводится на экран с помощью функцииwrite
. - Функция
readln
считывает ввод пользователя. - Программа завершается после ввода пользователем данных.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д