Нахождение минимального элемента до побочной диагонали в матрице

Условие задачи.

Квадратную матрицу 13x13 заполнить случайными числами из диапазона [-18..13], вывести ее на экран.
Заменить минимальный из элементов, расположенных на побочной диагонали и выше ее, на произведение элементов, расположенных ниже главной диагонали. Вывести матрицу на экран.

Программа на Pascal по работе с матрицей

Program Matrix;

Var a: array [1..13,1..13] Of integer;
  i,j,min,imin,jmin,n,max: integer;
Begin
  Writeln('Isxodnaya matrix');
  Randomize;
  For i:=1 To 13 Do
    Begin
      For j:=1 To 13 Do
        Begin
          a[i,j] := random(31)-18;
          Write(a[i,j]:5);
        End;
      writeln;
    End;
  min := a[1,1];
  j := 1;
  For n:=13 Downto 1 Do
    Begin
      i := 1;
      While i<>n Do
        Begin
          If min > a[i,j] Then
            Begin
              min := a[i,j];
              imin := i;
              jmin := j;
            End;
          i := i+1;
        End;
      j := j+1;
    End;
  writeln('Minimum = ',min);
  j := 1;
  max := 0;
  For n:=1 To 13 Do
    Begin
      i := 1;
      While i<>n Do
        Begin
          max := a[i,j];
          i := i+1;
        End;
      j := j+1;
    End;
  Writeln('Maximum = ',max);
  writeln ('i=',imin,' j=',jmin);
  a[imin,jmin] := max;
  readln;
  writeln('ismeninniu matrix');
  For i:=1 To 13 Do
    Begin
      For j:=1 To 13 Do
        Write(a[i,j]:5);
      writeln;
    End;
  Readln;
End.

Строки в Pascal

В Pascal существует специальный тип данных для упрощения работы со строками, называемый – строковым. Он специально разработан для обработки информации, представленной символами.
 
Var st : String ; {символьная строка длиной 255 байт}
Переменная st определяется как строка символов, содержащая максимальное количество элементов (256). Каждый символ занимает 1 байт.
Строка представляет собой одномерный массив из символов. Индексы в нем начинаются не с единицы, а с нуля. В нулевом байте строкового типа данных содержится номер количества символов в строке.
 
st1 : String [10] ;
{символьные строки длиной  10 байт}

Матрицы в Pascal

Распространённое понятие в программировании. Матрицы имеют огромное поле для их применения.

Матрицы в программировании рассматриваются как двумерный массив. Это массив состоящих  из нескольких строк и столбцов.

Максимальный элемент массива в Pascal

Часто встречаются задачи, где необходимо найти максимальный элемент в массиве. Рассмотрим общий алгоритм решения такой задачи.

Первое, что придётся сделать – создать массив. Как нам уже известно, нужно использовать цикл с параметром. Также удобнее будет создать массив случайным образом, если в условии задачи не оговорён способ задания массива.

Алгоритм нахождения максимального элемента массива выполняется следующим образом.

Массивы в Pascal

Массив в программировании является набором элементов одного типа (однотипных).

Различают несколько видов массивов – одномерный (векторный) и многомерный.

Элементы в массиве характеризуются своими именами и порядковыми номерами - индексами.

Индекс – это порядковый номер элемента в массиве.

В Паскале каждому элементу присваивается  один или несколько индексов, которые описывают положение элемента в массиве.

Итерационный цикл

Итерационном циклом называется цикл, в результате выполнения которого получается последовательность значений, в которой Yi-1 , Yi , Yi+1 , ... , YN каждый следующий член имеет более точное значение по отношению к предыдущему.

Условием выхода из такого цикла является следующее условие :

| Yi - Yi+1 | <= E 

где E - величина, называемая погрешностью вычисления, имеющая достаточно малое значение.

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

Например, рассмотрим такую задачу на вычисление суммы бесконечного ряда числе.