Составить программу формирования по вещественной квадратной матрице логического вектора - Pascal
Формулировка задачи:
Составить программу формирования по вещественной квадратной матрице А={a}_{ij},i=1/n,j=1/m логического вектора B={b}_{i},i=1/n,где {b}_{i} имеет значение true, если наибольший элемент в строке с номером i матрицы А не больше заданного Х,и значение false-в противном случае
Решение задачи: «Составить программу формирования по вещественной квадратной матрице логического вектора»
textual
Листинг программы
const
n = 10;
var
a: array[1..n, 1..n] of real;
b: array[1..n] of boolean;
c: array[1..n] of real;
i, j: integer;
x, max: real;
begin
writeln('Исходная матрица:');
randomize;
for i := 1 to n do
begin
for j := 1 to n do
begin
a[i, j] := -n div 2 + random * n;
write(a[i, j]:8:2);
end;
writeln;
end;
write('Введите число: ');
readln(x);
for i := 1 to n do
begin
max := a[1, 1];
for j := 1 to n do
if a[i, j] > max then
max := a[i, j];
b[i] := max <= x;
c[i] := max;
end;
writeln('Полученный вектор максимумов:');
for i := 1 to n do
write(c[i]:8:2);
writeln;
writeln('Полученный логический вектор:');
for i := 1 to n do
write(b[i]:8);
end.
Объяснение кода листинга программы
- Определение константы
nи присвоение ей значения10. - Объявление переменных:
a: двумерный массив размераnхnс элементами типаreal(вещественные числа);b: массив размераnс элементами типаboolean(логические значения);c: массив размераnс элементами типаreal(вещественные числа);i,j: целочисленные переменные;x,max: вещественные переменные.
- Вывод строки
Исходная матрица:. - Инициализация генератора случайных чисел.
- Цикл для заполнения матрицы
aслучайными вещественными числами и их вывода. - Запрос ввода числа
xс клавиатуры. - Цикл для нахождения максимального элемента в каждой строке матрицы
aи заполнения массивовb(логический вектор) иc(вектор максимумов) соответствующими значениями. - Вывод полученного вектора максимумов.
- Вывод полученного логического вектора.