Функция должна возвращать значение. Пусть катеты a и b, тогда она должна вернуть a * b / 2. Проверки входных параметров я не провожу, считая, что они корректны:
Код (Pascal):
function area(a, b: real): real;
begin
area := a * b / 2;
end;
begin
write(area(2, 2)) { должно вывести 2 }
end.
Процедура не возвращает значение. Чтобы она смогла-таки как-то сообщить основной программе результат, используем аргумент, перед которым указываем var.
Answers & Comments
Verified answer
Функция должна возвращать значение. Пусть катеты a и b, тогда она должна вернуть a * b / 2. Проверки входных параметров я не провожу, считая, что они корректны:
Код (Pascal):
function area(a, b: real): real;
begin
area := a * b / 2;
end;
begin
write(area(2, 2)) { должно вывести 2 }
end.
Процедура не возвращает значение. Чтобы она смогла-таки как-то сообщить основной программе результат, используем аргумент, перед которым указываем var.
Код (Pascal):
procedure area(a, b: real; var c: real);
begin
c := a * b / 2;
end;
var S: real;
begin
area(2, 2, S);
write(S) { должно вывести 2 }
end.
Ответ:
function Triangle(a,b:real):real;
begin
result:=(a*b)/2;
end;