Вычислить максимальный по модулю элемент массива (рекурсивной функцией) - PascalABC.NET

  1. В одномерном массиве, вводимом с клавиатуры и состоящем из N вещественных элементов, вычислить максимальный по модулю элемент массива (использовать рекурсивную функцию для вычисления).


textual

Код к задаче: «Вычислить максимальный по модулю элемент массива (рекурсивной функцией) - PascalABC.NET»

const
  N = 10;
  
var
  a: array[1..N] of real;
  
function max_elem(index: integer): real;
begin
  Result := a[index];
  if index < n then
  begin
    var tmp := max_elem(index + 1); {Чтобы не вызывать 2 раза}
    if abs(Result) < abs(tmp) then max_elem := tmp;
  end;
end;
 
begin
  for var i := 1 to N do read(a[i]);
  write(max_elem(1))
end.

СДЕЛАЙТЕ РЕПОСТ

7   голосов, оценка 3.857 из 5



Похожие ответы
  1. В одномерном массиве, вводимом с клавиатуры и состоящем из N вещественных элементов, вычислить количество четных элементов массива (использовать РЕКУРСИВНУЮ ФУНКЦИЮ для вычисления).

  1. Напишите программу, которая вычисляет выражение, состоящее из трех чисел (допускаются знаки «+», «–», «*» и «/» ) Пример: Введите выражение: 12*3+45 Ответ: 81

  1. Задание: Написать программу и для вычесления суммы значений функиции, если переменная Х меняется в интервале [-2;2] с нагом 0,4. Выдает: Сумма = NaN. Как исправить?

  1. Написал программу для решения, но она оказалась нерабочей. Мне надо чтобы при введении x=3 и c=0 прога должна выдать нет решения а при x=9 и c=-1 ответ 2

  1. Собственно вот сама задача: Треугольник задан координатами его вершин. Вычислить периметр, площадь треугольника. Вычисление длин сторон оформить в виде процедуры А вот то решение, которое у меня получилось:

  1. мне нужно присвоить значение lg|x|. то что lg(x)=ln(x)/ln(10), я знаю. а вот модуль как впихнуть в это затрудняюсь, подскажите как правильно написать? мб lg(x)=abs(ln(x)/ln(10))?

  1. Вычислить значение функции Z при одном значении X: Z = Y2 + X2, где