Предусмотреть вывод исходного массива в виде таблицы - Free Pascal
Формулировка задачи:
Разработать алгоритм и программу для вычисления среднего
арифметического любых указанных строки или столбца двумерного массива
размером [n×m]. Значения n и m должны вводиться с клавиатуры (принять
4≤n≤10, 4≤m≤10). Ввод номера строки или номера столбца – с клавиатуры.
Предусмотреть вывод исходного массива в виде таблицы.
Решение задачи: «Предусмотреть вывод исходного массива в виде таблицы»
textual
Листинг программы
const
n = 4;
m = 3;
var
a: array[1..n, 1..m] of Integer;
id, num, i, j: Integer;
sum, sr: Real;
begin
for i := 1 to n do
begin
for j := 1 to m do
begin
a[i, j] := -n * m div 2 + Random(n * m);
write(a[i, j]:5);
end;
writeln;
end;
write('Введите с чем будем работать. Строка(0) или столбец (1)? ');
Readln(id);
write('Введите номер: ');
Readln(num);
if id = 1 then
begin
for i := 1 to n do
sum := sum + a[i, num];//по строке идём
sr := sum / n;
WriteLn('среднее по ', num, ' строке = ', sr);
end;
if id = 0 then
begin
for i := 1 to m do
sum := sum + a[num, i];//или по столбцу идём
sr := sum / m;
WriteLn('среднее по ', num, ' столбцу = ', sr);
end;
Readln;
end.
Объяснение кода листинга программы
- Объявлены константы: n = 4, m = 3.
- Объявлена двумерная массивная переменная a размером 4x3 типа Integer.
- Объявлены переменные id, num, i, j типа Integer.
- Объявлены переменные sum и sr типа Real.
- Заполнение массива a случайными числами от -3 до 3 с шагом 1/2.
- Вывод значений массива a построчно с помощью цикла for и вложенного цикла for.
- Запрос на выбор строки или столбца для работы (id).
- Запрос на ввод номера строки или столбца (num).
- Если выбран столбец (id = 1), то выполняется суммирование элементов выбранной строки (for i := 1 to n do sum := sum + a[i, num]) и вычисление среднего значения (sr := sum / n).
- Если выбран столбец (id = 0), то выполняется суммирование элементов выбранного столбца (for i := 1 to m do sum := sum + a[num, i]) и вычисление среднего значения (sr := sum / m).
- Вывод результата на экран.