34666

Массивы: определение, описание, размещение в памяти, использование

Реферат

Информатика, кибернетика и программирование

Структурная схема массива. Type имя типа = RRY [ тип индекса ] OF тип элементов VR имя переменной : имя типа ; При таком способе описания в разделе Type описывается тип массива который будет использоваться в программе то есть его размер и тип элементов. С отдельным элементом массива можно делать все что с любой переменной. Обращаться к элементу массива надо указывая имя переменной с номером элемента в квадратных скобках.

Русский

2013-09-08

55 KB

13 чел.

исциплина «Основы алгоритмизации и программирование»  Массивы

Массивы: определение, описание, размещение в памяти, использование.

1. Структурные типы данных.

2. Одномерные массивы. Способы описания.

3. Двумерные массивы.

1. Структурные типы данных

Типы данных бывают основные и структурные. К основным относятся типы: Integer, Real, Boolean и Char. К структурным типам относятся: массивы, записи, множества и файлы.

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

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

Запись - совокупность неоднородных элементов базовых типов, обращение к которым выполняется с помощью имён полей.

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

Файл - совокупность однородных элементов базового типа, доступ к которым осуществляется последовательно. В отличие от других структурных типов, переменные которых хранятся в ОП, файлы хранятся на ВУ. Доступ к элементам файлов осуществляется с помощью стандартных процедур.

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

Массивы

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

Массивы бывают: одномерный, двухмерный и т.д.

2. Одномерные массивы. Способы описания.

Одномерный массив

8

4

7

3

2

Массив А.

Структурная схема массива.

Описание массивов

1. Неявный способ.

Type

<имя типа> = ARRAY [<тип индекса> ] OF <тип элементов >

VAR <имя переменной> : <имя типа>;

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

Пример:

Type

Mass1 = ARRAY [1..10] OF REAL;

Mass2 = ARRAY [1..10] OF INTEGER;

VAR  A,B: Mass1;

    С : Mass2;

2. Явный способ

VAR <имя переменной > : ARRAY [<тип индекса>]  OF <тип элементов >

При таком способе описания в разделе VAR  сразу указываются переменные, которые будут иметь тип – массив. Если необходимо создать массивы разных типов или разных размеров, то их описывают отдельно.

Пример:

VAR 

    A, B: ARRAY [1..10] OF REAL;

    С: ARRAY [1..10] OF INTEGER;

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

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

Например:

A[1], A[6], A[i].

Если необходимо обратиться поочередно к каждому элементу массива, то используются циклы. Чаще – цикл For.

Пример: вывести значения всех элементов массива А из предыдущих примеров.

For i:=1 to 10 do Writeln(a[i]);

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

For i:=1 to 10 do a[i]:=0;

Часто для решения задачи требуется, чтобы массив был заполнен различными числами. Вводить с клавиатуры множество чисел очень не удобно и долго. Для заполнения массива произвольными числами используется функция Random (AInteger);.  Данная функция возвращает случайное число. Пример:  n:=random(100). То есть в переменную n будет помещено случайное число от 0 до 100. В некоторых операционных системах для того, чтобы использовать эту функцию, необходимо включить (инициализировать) датчик случайных чисел. Для этого надо написать команду: Randomize; делается это обычно в начале программы..

Заполнение массива случайными числами будет иметь вид:

for i=1 to 10 do a[i]:=random(50);

Пример:

Program N1;

var

   M: Array [1..100] of Integer;

   A: Real;

   I: Byte;

begin

 Randomize;

 For I:=1 to 100 do

   M[I]:=Random(500);

 For I:=1 to 100 do

   A:=A+M[I];

 A:=A/100;

 Write('Среднее арифметическое всех чисел массива: ', A);

end.

3. Двумерные массивы.

По своей структуре аналогичны таблицам. Каждый элемент характеризуется номером строки и номером столбца. Например: А[3,8] – элемент из массива А находящийся в 3 строке и 8 столбце.

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

A: ARRAY [1..5, 1..10] of integer;

– описание двумерного массива из 5 строк и 10 столбцов.

Для обработки двумерного массива используются вложенные циклы For. Первый цикл – внешний изменяет номер строки. Второй – внутренний изменяет номер столбца.

Рассмотрим типичную структуру для обработки двумерного массива размером n на m:

For i:=1 to n do

begin

 {Действия, производимые для целой строки или перед обработкой строки}

 for j:=1 to m do 

 begin

   {действия производимые над каждым элементом}

 end;

 {Действия, производимые для целой строки или после обработки строки}

end;

Первый цикл для каждого из значений i повторяет полностью весь второй цикл, изменяя j от 1 до m. То есть для каждого номера строки просматриваются все номера столбцов.

Пример: Заполнить массив случайными числами и вывести на экран построчно:

For i:=1 to 5 do

begin

 for j:=1 to 10 do 

 begin

   a[i, j]:=random(100); {присваивает элементу массива случайное число}

   write(a[i,j]); {печатает элемент массива }

 end;

 writeln; {когда напечатана строка переводит курсор на следующую}

end;

ЛИТЕРАТУРА

  1.  Прикладная информатика: Учеб. пособие. А.Н. Морозевич, 2003.
  2.  Turbo Pascal 7.0 для студентов и школьников. Наука и Техника, 2007.

Разработал
Преподаватель: Скуловец А.П.

Рассмотрено и утверждено
на заседании методической комиссии
информационных технологий.


 

А также другие работы, которые могут Вас заинтересовать

77920. Добавление графики и эффектов в документы MS Office 399 KB
  В дальнейшем формулу можно отредактировать (изменить шрифт, размер, начертание). Для этого сделайте двойной щелчок в области формулы и выполните редактирование с помощью команд строки меню Стиль и Размер и кнопок панели инструментов Формула
77921. MS Word. Профессиональное форматирование документов 271 KB
  Автоматическое создание оглавления документа. Копирование стилей из документа или шаблона После создания стиля или изменения стиля в документе можно скопировать его в шаблон чтобы новый стиль стал доступен и для любого другого документа который будет создаваться на основе этого шаблона. Если это сделано изменённый или вновь созданный стиль будет скопирован в шаблон документа и доступен для всех документов которые в дальнейшем будут создаваться на основе этого шаблона.
77922. MS Excel. Начальные сведения 532 KB
  Часть новых функций, рассмотренных в предыдущих главах, относятся так же и к Excel, например, области задач и появляющиеся кнопки с раскрывающимися меню. Большинство новых или усовершенствованных функций будут не видны для вас до тех пор
77923. MS Excel. Использование функций 500.5 KB
  Диаграммы в Microsoft Excel Excel предоставляет в распоряжение пользователей множество функций для создания и форматирования диаграмм. Элементы диаграммы Excel предоставляет в распоряжение пользователя различные функции для работы с диаграммами.
77924. Обмен данными между приложениями MS Office 318.5 KB
  Общие принципы установки связей между документами. Связывание таблицы Excel и документа Word. При использовании статического копирования или статического перемещения данные становятся составной частью документа в приложении приёмнике. Этот тип копирования или перемещения обычно используется при работе с одним документом или несколькими документами одного приложения.
77925. Особенности локальных, глобальных и городских сетей 85.5 KB
  Компьютерные сети создаются для того, чтобы дать возможность территориально разобщенным пользователям обмениваться информацией между собой, использовать одинаковые программы, общие информационные и аппаратные ресурсы.
77926. Интернет. Браузер. Электронная почта. Web-дизайн 706 KB
  Общеизвестно, что у истоков изобретения вычислительной техники стояли американцы. Первоначально многие исследования в области создания и усовершенствования глобальных сетей поддерживались Министерством обороны США
77927. Работа в математическом пакете Mathcad 168.5 KB
  «Mathcad» включает в свой состав три редактора - формульный, текстовый и графический. Благодаря им обеспечивается принятый в математике способ записи функций и выражений и получение результатов вычислений, произведенных компьютером
77928. Арифметико-логические основы информатики 119 KB
  Арифметико-логические основы информатики Цели изучения: Сформировать представление об информационном обществе Объяснить роль и назначение информатики Определить понятие информации её свойства измерение и характеристики Получить знания о кодировании и представлении информации в ЭВМ. Основные понятия информатики Роль информатизации в развитии общества Структура информатики Измерение информации Качество информации. Системное программное обеспечение компьютеров Цели изучения: Сформировать...