Вычисление матрицы - Pascal

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

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

помогите найти ошибку в этой программе, после ввода размерности и самой матрицы, дальше вычисления не происходят.

Решение задачи: «Вычисление матрицы»

textual
Листинг программы
uses crt;
const nmax=20;
type matr=array[1..nmax,1..nmax] of integer;
procedure Vvod(var a:matr;var x,y:byte);
var i,j:byte;
begin
repeat
write('Количество строк до ',nmax,' =');
readln(x);
until x in [1..nmax];
repeat
write('Количество столбцов до ',nmax,' =');
readln(y);
until y in [1..nmax];
for i:=1 to x do
for j:=1 to y do
a[i,j]:=random(20)+1;
end;
procedure Vyvod(var a:matr;x,y:byte);
var i,j:byte;
begin
for i:=1 to x do
 begin
  for j:=1 to y do
  write(a[i,j]:4);
  writeln;
 end;
writeln;
end;
function MaxMin(a:matr;x,y,k:byte):integer;
var i,j:byte;
    mn,mx:integer;
begin
mn:=a[1,1];mx:=a[1,1];
for i:=1 to x do
for j:=1 to y do
if a[i,j]<mn then mn:=a[i,j]
else if a[i,j]>mx then mx:=a[i,j];
if k=1 then MaxMin:=mx else MaxMin:=mn;
end;
procedure SumRaz(var a:matr;x,y,k:byte;m:integer);
var i,j:byte;
begin
for i:=1 to x do
for j:=1 to y do
if k=1 then a[i,j]:=a[i,j]-m
else a[i,j]:=a[i,j]+m;
end;
var a:matr;
    m,n,w:byte;
    x:integer;
begin
clrscr;
randomize;
Vvod(a,n,m);
writeln('Исходная матрица:');
Vyvod(a,n,m);
writeln('Выберите действие:');
writeln('1-Найти максимум');
writeln('2-Найти минимум');
repeat
readln(w);
until w in [1..2];
x:=MaxMin(a,n,m,w);
if w=1 then
 begin
  writeln('Максимальный элемент=',x);
  writeln;
  writeln('Матрица разностей с максимальным элементом:');
 end
else
 begin
  writeln('Минимальный элемент=',x);
  writeln;
  writeln('Матрица сумм с минимальным элементом:');
 end;
SumRaz(a,n,m,w,x);
Vyvod(a,n,m);
readln
end.

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

  1. Ввод данных о матрице (количество строк и столбцов)
  2. Инициализация матрицы случайными значениями
  3. Вывод исходной матрицы
  4. Получение выбора действия от пользователя (1-Найти максимум, 2-Найти минимум)
  5. Нахождение максимального/минимального элемента матрицы
  6. Вывод найденного максимума/минимума и разности/суммы матрицы с этим элементом
  7. Ввод данных о матрице (количество строк и столбцов)
  8. Вывод полученной матрицы

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


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

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

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