
Предмет: Информатика
ГДЗ Учебник по Информатике 9 класс БосоваВ целочисленных массивах А и В содержатся длины катетов десяти прямоугольных треугольников
ЧАТ-БОТ: ГДЗ с нейронкой
§ 1.4 Обработка одномерных массивов целых чисел на языке Паскаль
Задание 11. В целочисленных массивах А и В содержатся длины катетов десяти прямоугольных треугольников (A[i]. — длина первого катета, B[i] — длина второго катета i-гo треугольника). Напишите программу, которая по имеющимся данным определит треугольник с наибольшей площадью и выведет его номер, длины катетов и площадь. Предусмотрите случай, когда таких треугольников несколько.
Программа на языке Паскаль:
program Zadacha11;
const
N = 10; // количество треугольников
var
A, B: array[1..N] of integer;
Area: array[1..N] of real;
MaxArea: real;
MaxIndex: array[1..N] of integer;
MaxCount, i: integer;
begin
for i := 1 to N do
begin
Write('Введите длину первого катета для треугольника ', i, ': ');
ReadLn(A[i]);
Write('Введите длину второго катета для треугольника ', i, ': ');
ReadLn(B[i]);
end;
// Инициализация переменных для поиска максимальной площади
MaxArea := 0; // начальное значение максимальной площади
MaxCount := 0; // начальное количество треугольников с максимальной площадью
// Вычисление площадей треугольников и нахождение максимальной площади
for i := 1 to N do
begin
Area[i] := 0.5 * A[i] * B[i]; // вычисление площади треугольника по формуле 0.5 * A * B
if Area[i] > MaxArea then // если текущая площадь больше максимальной
begin
MaxArea := Area[i]; // обновляем максимальную площадь
MaxCount := 1; // сбрасываем счетчик и устанавливаем его в 1
MaxIndex[1] := i; // запоминаем индекс треугольника с новой максимальной площадью
end
else if Area[i] = MaxArea then // если текущая площадь равна максимальной
begin
MaxCount := MaxCount + 1; // увеличиваем счетчик
MaxIndex[MaxCount] := i; // запоминаем индекс треугольника с максимальной площадью
end;
end;
// Вывод результата
WriteLn('Треугольники с наибольшей площадью:');
for i := 1 to MaxCount do
begin
WriteLn('Треугольник ', MaxIndex[i], ': катеты A = ', A[MaxIndex[i]],
', B = ', B[MaxIndex[i]], ', площадь = ', Area[MaxIndex[i]]);
end;
end.
Программа на языке Python:
# Константа для количества треугольников
N = 10
# Инициализация списков для хранения катетов, площадей и индексов
A = [0] * N # Длины первого катета
B = [0] * N # Длины второго катета
Area = [0.0] * N # Площади треугольников
MaxArea = 0.0 # Максимальная площадь
MaxIndex = [] # Список для хранения индексов треугольников с максимальной площадью
# Ввод данных о катетах
for i in range(N):
A[i] = int(input(f'Введите длину первого катета для треугольника {i + 1}: '))
B[i] = int(input(f'Введите длину второго катета для треугольника {i + 1}: '))
# Инициализация переменных для поиска максимальной площади
MaxCount = 0 # Количество треугольников с максимальной площадью
# Вычисление площадей треугольников и нахождение максимальной площади
for i in range(N):
Area[i] = 0.5 * A[i] * B[i] # Вычисление площади треугольника
if Area[i] > MaxArea: # Если текущая площадь больше максимальной
MaxArea = Area[i] # Обновляем максимальную площадь
MaxCount = 1 # Сбрасываем счетчик и устанавливаем его в 1
MaxIndex = [i] # Запоминаем индекс треугольника с новой максимальной площадью
elif Area[i] == MaxArea: # Если текущая площадь равна максимальной
MaxCount += 1 # Увеличиваем счетчик
MaxIndex.append(i) # Запоминаем индекс треугольника с максимальной площадью
# Вывод результата
print('Треугольники с наибольшей площадью:')
for i in range(MaxCount):
index = MaxIndex[i]
print(f'Треугольник {index + 1}: катеты A = {A[index]}, B = {B[index]}, площадь = {Area[index]}')