русс | укр

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

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

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

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


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

ОБЪЯВЛЕНИЕ ДВУМЕРНЫХ МАССИВОВ


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


ДВУМЕРНЫЕ МАССИВЫ

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

 

Марка Январь Февраль Март ... Ноябрь Декабрь
ВАЗ 2106            
ВАЗ 2107            
ВАЗ 2108            
ВАЗ 2109            
ВАЗ 2110            
ВАЗ 2111            

 


Приведенная выше таблица может быть представлена как совокупность одномерных массивов:

var vaz2106 : array [1..12] of integer;

vaz2107 : array [1..12] of integer;

vaz2108 : array [1..12] of integer;

vaz2109 : array [1..12] of integer;

vaz2110 : array [1..12] of integer;

vaz2111 : array [1..12] of integer;

Возможно и такое представление таблицы:

var jan :array [6..11] of integer;

feb :array [6..11] of integer;

mar :array [6..11] of integer;

...

dec :array [6..11] of integer;

 

Если вся таблица содержит однородную информацию, например, только целые числа, то такая таблица может быть представлена как двумерный массив.

 

var vaz :array [6..11] of array [1..12] of integer;

 

Принято более компактное описание:

 

var vaz : array [6..11, 1..12] of integer;

 


ОБЪЯВЛЕНИЕ ДВУМЕРНЫХ МАССИВОВ

Конструкция объявления двумерного массива:

 

array [тип_индекса1, тип_индекса2] ofбазовый_тип;

 

Объявить массив возможно в разделах объявления констант, типов, переменных

 

constимя: array [тип_индекса1, тип_индекса2] ofбазовый_тип = ((список_элементов_1), …, (список_элементов_N));



 

typeимя = array [тип_индекса1, тип_индекса2] ofбазовый_тип;

 

varимя: array [тип_индекса1, тип_индекса2] ofбазовый_тип;


 

где имя – это имя массива-константы, имя типа массива, имя переменной массива и соответственно (идентификатор);

array, of – зарезервированные слова, которые переводятся как «массив», «из»;

базовый_тип – тип элементов массива (кроме файлового типа);

тип_индекса1, тип_индекса2 – любой порядковый тип, размерность которого не превышает 2 Гб для OP Delphi 6 (для Turbo Pascal – 64 Кбайт).

 

Тип_индекса1 характеризует порядковые номера элементов матрицы в строках, тип_индекса2 – в столбцах.


 

В случае использования в роли типа индекса ограниченного типа (интервального типа) конструкция описания двумерного массива выглядит:

 

array [нижний_индекс1..верхний_индекс1,

нижний_индекс1..верхний_индекс2] ofбазовый_тип;

 

Количество элементов массива равняется величине:

 


Примеры объявления двумерных массивов:

const k=10; m=2; n=5;

 

{Объявление массива-константы из двух строк, трех столбцов

– шесть целочисленных элементов}

 

f : array [1..2, 1..3] of byte = ((0,1,2), (3,4,5));

 

{Объявление типа массива из пяти строк, пяти столбцов –

25 целочисленных элементов}

 

type matrix = array [1..n, 1..n] of integer;

 

{Объявление переменных массивов}

{массив из пяти строк, пяти столбцов – 25 целых элементов}

var a:matrix;


{ Массив из 10 строк, двух столбцов – 20 действительных элементов}

 

b : array [1 .. k, 1 .. m] of real;

 

{Массив из четырех строк, трех столбцов – 12 символьных элементов}

 

c : array [1..4, 1..3] of char;

 

{Массив из 256 строк, двух столбцов – 512 целых элементов}

d : array [byte, 1..2] of integer;


 

Напомним:

объем сегмента памяти, где будут храниться данные Pascal-программы, представляет для Turbo Pascal 64 Кбайт, Object Pascal – 2 Гбайт. Поэтому есть ограничения на количество элементов массива. Размер памяти можно рассчитать: произведение количества элементов массива на размер одного элемента в байтах.


Естественной формой изображения двумерного массива является таблица.

Пример: на рисунке изображен массив, который объявлен как

 

var а: array [1..2, 1..3] of byte;

 

      Направление увеличения второго индекса
   
     
Направление увеличения первого индекса 1 a11 a12 a13  
a21 a22 a23  

 


 

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

 

1-я строка 2-я строка  
             

 



<== предыдущая лекция | следующая лекция ==>
Компьютерные презентации. | В памяти компьютера элементы идут один за одним так, что при переходе от младших адресов к старшим наиболее быстрее изменяется правый индекс массива.


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


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

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

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


 


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

 
 

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

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