Описать функцию вычисления гипотенузы треугольника - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Всем привет. Нужно соорудить функцию вычисления гипотенузы треугольника. Элементы берём из массива 5 х 2 . Где каждая из пяти строк - стороны треугольника. Находить все гипотенузы,если возможно. Из задания понял,что работа функции каким то образом должна поддерживать и дробные числа... Прошу помощи.

Решение задачи: «Описать функцию вычисления гипотенузы треугольника»

textual
Листинг программы
program Project2;
type vector = array[1..1000] of real;
matrix = array[1..100]of vector;
var
    a:matrix;
    i,n,m:integer;
    h:vector;
procedure ShowMatrix(a:matrix;n,m:integer);
var i,j:integer;
begin
    for i:=1 to n do
  begin
  for j:=1 to m do
    write(a[i,j]:6:2);
    writeln;
 end;
 writeln;
end;
procedure InitArray(var a:matrix;n,m:integer);
var i,j:integer;
begin
for i:=1 to n do
  begin
  for j:=1 to m do
    begin
      write('a[',i,',',j,']=');readln(a[i,j]);  
    end;
 end;
end;
function Hypotenuse(a,b:real):real;
begin
    Hypotenuse := sqrt(a*a +b*b);
end;
procedure ShowVector(a:vector;n:integer);
var i:integer;
begin
    for i:=1 to n do
        write(a[i]:6:2);
    writeln;
end;
procedure GetHypotenuseArr(const a:matrix;n:integer;var h:vector);
var
 i,j:integer;
begin
 for i:=1 to n do
 begin
    h[i] := Hypotenuse(a[i,1],a[i,2]);
 end;
end;
begin
write('n=');readln(n);
InitArray(a,n,2);
GetHypotenuseArr(a,n,h);
writeln('Gipotenusi');
ShowVector(h,n);
readln;
end.

Объяснение кода листинга программы

  1. Объявление переменных и типов данных — Объявлен тип данных вектор как массив из 1000 элементов типа real — Объявлен тип данных матрица как массив из 100 элементов типа вектор — Объявлены переменные a, i, n, m типа integer — Объявлена переменная h типа вектор
  2. Описание процедур — ShowMatrix - выводит элементы матрицы на экран — InitArray - инициализирует элементы матрицы с помощью ввода с клавиатуры — Hypotenuse - вычисляет гипотенузу треугольника — ShowVector - выводит элементы вектора на экран — GetHypotenuseArr - вычисляет гипотенузы для каждого треугольника в матрице и сохраняет их в векторе
  3. Главный блок программы — Ввод значения переменной n с клавиатуры — Инициализация матрицы a с помощью процедуры InitArray — Вычисление гипотенуз для каждого треугольника в матрице и сохранение их в векторе h с помощью процедуры GetHypotenuseArr — Вывод на экран значения переменной h с помощью процедуры ShowVector — Запрос на ввод символа для завершения работы программы
  4. Примечание: — Функция Hypotenuse вычисляет гипотенузу треугольника по формуле sqrt(a*a + b*b) — В данном коде предполагается, что пользователь будет вводить корректные значения для переменных n и a[i,j], иначе возможны ошибки выполнения программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.667 из 5
Похожие ответы