Анализ элементов массива. for i:=1 to n do {ввод массива}

End.

Begin

Begin

Begin

for i:=1 to n do {ввод массива}

read(a[i]);

for k:=1 to n-1 do

min:=a[k];

Nmin:=k;

for i:=k+1 to n do

if a[i]<Min then

min:=a[i];

Nmin:=i;

end;

t:=a[k];

a[k]:=a[Nmin];

a[Nmin]:=t;

end;

for i:=1 to n do

write(a[i],' ');

Алгоритмы обработки двумерных
массивов

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

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

Рассмотрим в качестве примера программу, которая вычисляет среднеарифметическое элементов каждой строки двумерного массива.

Первая часть алгоритма, представленного на рисунке 21 (блоки 2, 3, 4), предназначена для ввода элементов массива. Счётчик внешнего цикла (блок 2) задаёт номер столбца, после этого внутренний цикл (блок 3) обеспечивает перебор всех элементов текущего столбца. Таким образом, эта часть алгоритма обеспечивает ввод массива по столбцам.

Далее, в обрабатывающей части алгоритма, внешний цикл (блок 5) задаёт значение счётчика j, который определяет номер обрабатываемой строки. Внутри данного цикла находится алгоритм вычисления суммы элементов одномерного массива (блоки 6, 7, 8). После этого значение переменной S, в которой сохранено значение суммы элементов строки, будет поделено на количество столбцов массива (блок 9) и полученное среднеарифметическое будет выведено на экран (блок 10).

Рисунок 21 – Блок-схема алгоритма вычисления среднеарифметического значения элементов каждой строки двумерного массива

Приведём трассировку обрабатывающей части представленного алгоритма (таблица 12).

Таблица 12 – Трассировка алгоритма вычисления среднеарифметического значения элементов каждой строки двумерного массива

№ блока j i A[i,j] S A
    - - -  
индексы      
       
       
       
    - -  
         
         
         
         
         
         
         
9, 10        
    - -  
индексы      
       
       
       
    - -  
         
         
         
         
         
         
         
9, 10        
    - -  
индексы      
       
       
       
    - -  
         
         
         
         
         
         
         
9, 10        
    - -    
  - - -    

Реализация алгоритма в программу выглядит следующим образом:

program sort2;

uses crt;

const n=5; m=4;

var a:array [1..n,1..m] of real;

j,i:integer;

s:real;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: