Сайт учителя

Тинькова Е.Н.

Урок 24


Решение задач с использованием одномерных массивов.

Ключевые слова:

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

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

  • суммирование значений элементов массива;

  • поиск элемента с заданными свойствами;

  • сортировка массива.

Перед использованием в программе массив должен быть описан, т. е. должно быть указано имя массива, количество элементов масси­ва и их тип. Это необходимо для того, чтобы выделить участок памя­ти нужного размера для хранения массива.

Общий вид описания одномерного массива:

var   <имя_массива>:  array   [<мин_знач_индекса> . .  <макс_знач_индекса>]  of <тип_элементов>;

Пример

var a:   array   [1..10]   of  integer;

Здесь описан массив а из 10 целочисленных значений. При выпол­нении этого оператора в памяти компьютера будет выделено место для хранения десяти целочисленных переменных.

Массив, элементы которого имеют заданные начальные значения, может быть описан в разделе описания констант:

const b:   array   [1..5]   of  integer  =   (1,   2,   3,   5,   7);

В этом случае не просто выделяются последовательные ячейки па­мяти — в них сразу же заносятся соответствующие значения.

Заполнять массив можно либо вводя значение каждого элемента с клавиатуры, либо присваивая элементам некоторые значения в про­грамме. При этом может использоваться цикл с параметром. Задавать значения элементов массива можно с помощью операто­ра присваивания.

Например, для ввода с клавиатуры значений элементов описанно­го выше массива а используется следующий цикл с параметром:

for  i:=l   to  10  do  read   (a[i]);

Задавать значения элементов массива можно с помощью операто­ра присваивания. Например:

for  i:=l  to  10  do  a[i]:=i;

В следующем фрагменте программы организовано заполнение це­лочисленного массива а, состоящего из 10 элементов, случайными числами, значения которых изменяются в диапазоне от 0 до 99:

randomize;

for  i:=l  to  10  do  a[i]:=random(100);

Суммирование элементов массива осуществляется по тому же прин­ципу, что и суммирование значений простых переменных: за счёт по­очерёдного добавления слагаемых.

Под сортировкой (упорядочением) массива понимают перераспределение значений его элементов в некотором определённом порядке.

Сортировка выбором (например, по невозрастанию) осуществляется следующим образом:

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

     var  <имя_массива>: array   [<мин_знач_индекса> .. <макс_знач_индекса>]   of  тип_элементов;

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

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

Приведём фрагмент программы, реализующий описанный алгоритм:

for i:=l  to n-1 do begin

   imax:=i;

   for j:=i+l  to n do if a[j]>a[imax]   then imax:=j;

      x:=a[i];

      a[i]:=a[imax];

      a[imax]:=x

end;


Вопросы и задания

  1. Ознакомьтесь с материалами презентации к параграфу, содержащейся в электронном приложении к учебнику.  Какими слайдами вы могли бы дополнить презентацию?

  2. Каким образом может быть представлен поиск наибольшего массива?

  3. Какими способами можно заполнить массив?


 Самое главное

Массив - упорядоченное множество однотипных элементов, у которых есть общее имя и порядковый номер.

Массив — это поименованная совокупность однотипных элементов, упорядоченных по индексам, определяющим положение элементов в массиве.

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

Перед использованием в программе массив должен быть описан командой array [1..n] of  далее идет тип. Общий вид описания одномерного массива:
var  <имя_массива>:   array   [<мин_знач_индекса>   .. <макс_знач_индекса>]   of  тип_элементов;

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

При заполнении массива и его выводе на экран используется цикл с параметром.

При решении разнообразных задач, связанных с обработкой мас­сивов, используются такие типовые алгоритмы, как:

суммирование элементов массива;

поиск элемента с заданными свойствами;

сорти­ровка массива.

Суммирование элементов массива осуществляется по прин­ципу суммирования значений простых переменных: за счёт по­очерёдного добавления слагаемых.

В программировании поиск — одна из наиболее часто встречающихся задач не вычислительного характера.

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

Так же как циклы позволяют компактно записывать большое количество действий, массивы позволяют компактно обозначить (дать имя) большой объем информации.

Под сортировкой (упорядочением) массива понимают перераспределение значений его элементов в некотором определённом порядке. целыми числами. Цель сортировки  заключается в том, чтобы облегчить последующий поиск элементов: искать нужный элемент в упорядоченном массиве легче.

Block title

Вход на сайт

Поиск

Календарь

«  Декабрь 2024  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
3031

Статистика


Онлайн всего: 7
Гостей: 7
Пользователей: 0

Архив записей