Порядковый номер в матрице - Turbo Pascal

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

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

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

Решение задачи: «Порядковый номер в матрице»

textual
Листинг программы
uses crt;
const K=5;
type mat=array[1..k,1..k] of real;
var a,b:mat;
    i,j,m,n:integer;
   max1, max2, z:real;
   imax1,jmax1,imax2,jmax2: byte;
 
procedure input (var c:mat);
var i,j:integer;
begin
for i:=1 to k do begin
for j:=1 to k do begin
c[i,j]:=random(50);
end; end;
end;
 
procedure print (var c:mat);
var i,j:integer;
begin
writeln('Massiv : ');
for i:=1 to k do begin
for j:=1 to k do begin
write(c[i,j]:5:0);
write(' ');
end;
writeln(' ') end;
end;
 
procedure SearchMax(var c:mat; var max:real; var im,jm: byte);
begin
 max:=0;
  for i:=1 to k do
  for j:=1 to k do
   if i = j then
    begin
     if c[i,j] > max then
        begin
        max:=c[i,j];
        im:=i;
        jm:=j;
        end;
      m:=i; n:=j;
      end;
end;
begin
clrscr;
randomize;
 input(a);
 input(b);
 print(a);
 print(b);
 max1:=0;
 max2:=0;
 searchmax(a,max1,imax1,jmax1);
 searchmax(b,max2,imax2,jmax2);
 writeln('');
 writeln('x=',max1:6:0,', в строке ',imax1,', в столбце ',jmax1);
 writeln('y=',max2:6:0,', в строке ',imax2,', в столбце ',jmax2);
 
readkey;
end.

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

  1. Объявлены переменные:
    • a, b: mat;
    • i, j, m, n: integer;
    • max1, max2, z: real;
    • imax1,jmax1,imax2,jmax2: byte;
  2. Введен блок процедур:
    • procedure input (var c:mat);
  3. Введен блок процедур:
    • procedure print (var c:mat);
  4. Введен блок процедур:
    • procedure SearchMax(var c:mat; var max:real; var im,jm: byte);
  5. Введен основной блок:
    • clrscr;
    • randomize;
    • input(a);
    • input(b);
    • print(a);
    • print(b);
    • max1:=0;
    • max2:=0;
    • SearchMax(a,max1,imax1,jmax1);
    • SearchMax(b,max2,imax2,jmax2);
    • writeln('');
    • writeln('x=',max1:6:0,', в строке ',imax1,', в столбце ',jmax1);
    • writeln('y=',max2:6:0,', в строке ',imax2,', в столбце ',jmax2);
    • readkey;
  6. Функция input() заполняет массив случайными числами от 0 до 50.
  7. Функция print() выводит содержимое массива на экран.
  8. Функция SearchMax() ищет максимальное значение в массиве и запоминает его координаты.
  9. В основном блоке программа заполняет два массива, выводит их на экран, ищет максимальные значения и выводит их координаты.

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

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

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