Действия над элементами массивов

 

После объявления массива каждый его элемент можно обработать, указав идентификатор массива и индекс элемента в квадратных скобках. Рассмотрим типичные ситуации, возникающие при работе с массивами. Для этого опишем четыре одномерных массива: два (A и B) из элементов целочисленного типа, два (C и D) из элементов вещественного типа и два двумерных массива (V и W), содержащих элементы вещественного типа.

Var A, B: array[1..5] of integer;

C, D: array [1..10] of real;

V, W: array [1..4,1..4] of real;

Инициализация массива

Инициализация – это присваивание каждому элементу массива какого-либо (или одного и того же) значения типа. Например, A[1]:=0; A[2]:=0; ... A[5]:=0 или V[1,1]:=0; V[1,2]:=0; и т.д. Но при большом количестве элементов такой способ инициализации нерационален. Гораздо удобнее получить такой же результат, используя оператор FOR:

For I:=1 To 5 Do A[I]:= 0; For I:=1 To 4 Do For J:=1 To 4 Do V[I,J]:=0;

Ввод элементов массива

Паскаль не имеет средств ввода-вывода элементов массива сразу, поэтому ввод и вывод значений производится поэлементно. Чаще всего они вводятся с помощью оператора Read (Readln) с использованием оператора цикла For:

For I:=1 To M Do Begin W Writeln(‘Введите ’,I,’ элемент массива’); Read(A[I]); End; For I:=1 To M Do Begin Writeln(‘Введите ’,I,’строку’); For J:=1 To N Do Read(V[I,J]); End;

Вывод элементов массива

производится аналогично, но с использованием оператора Write (Writeln).

Writeln(‘Вывод массива A’); For I:=1 To M Do Write(A[I]:4:2,' ':2); Writeln; Writeln(‘Вывод массива V’); For I:=1 To M Do Begin For J:=1 To N Do Write(V[I,J]:4:2,' ':2); Writeln; End;

Копирование элементов из одного массива в другой

Для выполнения этого действия необходимо, чтобы массивы, участвующие в этой операции, были описаны одинаково. Например, В:=А; - верно, так как В и А имеют одинаковый тип компонент; А:=С; – неверно, т.к. С имеет компоненты типа real, а А – типа integer и массивы А и С разной длины). Или, используя цикл:

For I:=1 To M Do Begin B[I]:=A[I]; C[I]:=B[I] End; For I:=1 To M Do For J:=1 To N Do W[I,J]:=V[I,J];

Поиск в массиве элементов, удовлетворяющих некоторым условиям

Пусть надо выяснить, сколько элементов в массивах С и W имеют нулевое значение.

  K:=0; For I:=1 To M Do If C[I]=0 Then K:=K+1; K:=0; For I:=1 To M Do For J:=1 To N Do If W[I,J]=0 Then K:=K+1;

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

Поиск минимального (максимального) элемента массива рассмотрим на примере поиска минимального элемента в одномерном массиве С и максимального – в двумерном массиве W.

Min:=C[1]; For I:=1 To M Do If C[I]<Min Then Min:=C[I];   Max:=W[1,1]; For I:=1 To M Do For J:=1 To N Do If W[I,J]>Max Then Max:=W[I,J];







Дата добавления: 2019-02-07; просмотров: 435;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.