Номер §1.4 № 11

ГДЗ по информатике 9 класс, Босова 2023, страница 55

§. № Поиск треугольников наибольшей площади

В целочисленных массивах A и B содержатся длины катетов десяти прямоугольных треугольников (A[i] — длина первого катета, B[i] — длина второго катета i-го треугольника). Напишите программу, которая по имеющимся данным определит треугольник с наибольшей площадью и выведет его номер, длины катетов и площадь. Предусмотрите случай, когда таких треугольников несколько.

Решение

Для одного прямоугольного треугольника с катетами A[i] и B[i] площадь равна половине их произведения: . Поэтому для сравнения площадей достаточно сравнивать произведения катетов: деление всех произведений на не изменяет их порядок.

A[i]B[i]ABC

Сначала читаем десять пар положительных длин. За начальный максимум берём произведение катетов первого треугольника, ведь хотя бы один треугольник дан. Первый проход находит наибольшее произведение. Второй проход выводит каждый треугольник с этим произведением, так что равные наибольшие площади не теряются.

program LargestTriangles;
var
  A, B: array[..] of integer;
  i: integer;
  product, largest: longint;
begin
  for i :=  to  do
  begin
    repeat
      write('Катеты треугольника ', i, ': ');
      readln(A[i], B[i]);
    until (A[i] > ) and (B[i] > );
  end;
  largest := longint(A[]) * B[];
  for i :=  to  do
  begin
    product := longint(A[i]) * B[i];
    if product > largest then largest := product;
  end;
  for i :=  to  do
    if longint(A[i]) * B[i] = largest then
      writeln('Номер ', i, '; катеты ', A[i], ' и ', B[i],
              '; площадь ', largest / ::);
end.

Например, пары катетов (; ) и (; ) дают одинаковое произведение и одинаковую площадь . Если — наибольшее произведение среди десяти пар, программа выведет оба номера. Следовательно, вывод содержит все искомые треугольники.

Ответ

Программа выводит номера, катеты и площадь всех треугольников с наибольшей площадью.

Помогло?

Нет твоего задания?Сфоткай, и ДЗмэн решит за пару секунд.

Решить по фото