русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Допустимые операции с массивами


Дата добавления: 2013-12-23; просмотров: 1118; Нарушение авторских прав


Многомерные массивы

Массивы, у которых указан один индексный тип и типом компонент которых не является массив, являются одномерными. Иногда одномерные массивы называют векторами.

Пример: одномерный массив (вектор)

type

TVector = array [ 1..10 ] of real;

Если типом компонент также является массив, то результат можно рассматривать как массив массивов или как один многомерный массив. Другой способ описать многомерный массив – указать через запятую несколько индексных типов.

Пример: многомерные массивы

type

TArray1 = array [ 1..10 ] of real; {одномерный массив}

TArray2 = array [ -3..3 ] of TArray1;

{массив массивов – двухмерный массив}

TArray2b = array [ -3..3 ] of array [ 1..10 ] of real;

{массив массивов – двухмерный массив}

TArray3 = array [ 1..10, boolean, ‘A’..’Z’ ] of integer;

{трехмерный массив}

Частным случаем многомерных массивов является двумерный массив – матрица, таблица. В этом случае обычно первый индекс определяет номер строки, второй – номер столбца.

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

Пример: число элементов в массивах

type

TArray1 = array [ 1..10 ] of real; {10 элементов}

TArray2 = array [ -3..3 ] of TArray1; {7*10 = 70 элементов}

TArray2b = array [ -3..3 ] of array [ 1..10 ] of real; {7*10 = 70 элементов }

TArray3 = array [ 1..10, boolean, ‘A’..’Z’ ] of integer;

{10*2*26 = 520 элементов}

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



Пример: обращение к элементам многомерных массивов

type

TMatrix = array [ -3..3 ] of array [ 1..10 ] of real;

var

M: TMatrix;

M[1][2] := 3;

M[-2, 9] := 6;

M[i-2, i+6] := M[i][i];

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

Пример:

A:=B;

X:=Y;

В случае массивов типы переменных являются идентичными, если:

· тип описан в разделе описания типов;

Пример:

type

Cube = array[0..1,0..1,0..1] of integer;

var

A, B: Cube;

· переменные записаны в разделе var через запятую.

Пример:

var

X, Y: array[0..1,0..1,0..1] of integer;

Пример: типы переменных A и X не идентичны.

Пример: неидентичные типы:

type

MyArray1 = array[1..5] of byte;

MyArray2 = array[1..5] of byte;

Пример: неидентичные типы переменных:

var

K: array[1..5] of byte;

N: array[1..5] of byte;

Вводятся и выводятся массивы покомпонентно. Для ввода или вывода массива в список ввода или вывода помещается переменная с индексом, а операторы ввода или вывода выполняются в цикле.

Пример: вывод вектора на экран

const

N=10;

type

TVector = array[1..N] of integer;

var

X: TVector;

i: integer;

for i:=1 to N do writeln(X[i]);

Массивы нельзя сравнивать (можно покомпонентно).



<== предыдущая лекция | следующая лекция ==>
Обращение к элементам массива | Сортировка выбором


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.