Иформация о массивах

Автор работы: Пользователь скрыл имя, 03 Октября 2012 в 17:06, доклад

Краткое описание

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

Вложенные файлы: 1 файл

Массивы.docx

— 25.21 Кб (Скачать файл)

1.1 Массив – упорядоченный конечный набор однотипных данных.

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

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

 

 

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

 

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

Каждая оценка в таком  массиве определяется двумя индексами, например так  A[i,j], где первый или старший индекс указывает номер студента по списку, а второй номер работы за которую получена оценка. 

 

 

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

 

 

            Определить тип двумерный  массив можно несколькими способами.

type  

 TTable = array[0..34] of array[0..9] of integer; //или так 

 TTable = array[0..34,0..9] of integer; //упрощенная форма

//фиксированный  по обеим размерностям массив 35х10 элементов 

 

 

    TTable = array of array[0..9] of integer;

//динамический  массив, элементы которого фиксированные  массивы 

 

 

    TTable = array of array of integer;

//динамический  по обеим размерностям массив   

 

Последнее определение двумерного динамического массива лучше  подходит для хранения таблицы успеваемости, поскольку количество студентов  в группах может различаться  и количество контрольных задании  также может различаться от семестра к семестру. В практической работе определим глобальный тип TTable и переменную, которая будет служить хранилищем данных успеваемости. var vTable:TTable;  

 

 

            Сначала двумерный массив  с заданным количеством строк  и столбцов нужно создать как  показано в модуле TaskTable и записать туда случайные значения имитирующие оценки студентов. Затем таблицу нужно отобразить при помощи класса TStringGrid. 

 

 

            Класс TStringGrid предназначен для отображения таблиц. Окно StringGrid расчерчено на клетки образующие вертикальные колонки Column и горизонтальные ряды Row. В каждой клетке можно отобразить одну строку. Слева и сверху располагаются особые, фиксированные ряды и колонки, окрашенные серым цветом. Они предназначены для поясняющих названий или заголовков каждой колонки или ряда. 

 

 

            Разберем некоторые наиболее  важные свойства класса TStringGrid. 

 

1. Cells – двумерный массив строк, отображаемых в клетках таблицы. Каждая строка задается двумя индексами, причем первый индекс – это номер колонки, а второй – номер ряда. Нумерация начинается с нуля.

2. ColCount и RowCount – общее количество колонок и рядов, включая фиксированные.  

 

3. FixedCols и FixedRows – отдельно задаваемое количество фиксированных колонок и рядов, предназначенных для заголовков. 

 

4. DefaultColWidth и DefaultRowHeight – ширина колонки и высота ряда по умолчанию. Измеряется в пикселах экрана. 

 

5 Col и Row – индексы выделенной колонки и выделенного ряда. Пересечение колонки и ряда задает выделенную клетку.  

 

Свойства StringGrid можно настраивать в инспекторе объектов, либо непосредственно в программе в теле процедуры отображения данных.  

 

С классами, как и с  записями, часто используется оператор with, который связывает объект с его свойствами. Например, 

 

with Grid do begin 

 RowCount:= Length(T) + 1;  

 ColCount:= Length(T[0]) + 1;

 

 

 

1.2. Построение графика  функции в алфавитно-цифровом  или графическом режиме

 

Пусть нужно вывести на алфавитно-цифровой экран монитора график функции  y= f(x) в заданном диапазоне изменения аргумента х от а до b с числом точек графика n (n£25). Перед выводом графика нужно напечатать вычисленные значения yi в виде таблицы, также напечатать наибольшее и наименьшее значения функции f(x).

Рассмотрим решение этой задачи на конкретном примере:

. Число точек графика равно  20.

Примем ширину поля графика w, равной 61 позиции. Отступим от левого края экрана на  m= 10 позиций. Для вывода строки графика выделим символьный массив С, состоящий из  (w+m) элементов, т.е. 71 элемента. Масштаб по оси х примем равным шагу h при перемещении на одну строку. Масштаб по  оси y выберем таким, чтобы максимально использовать поле графика w. Для это необходимо вычислить

 

ymax = max {yi} и  ymin = min{yi}

  i       i

Определим масштаб my  по формуле:

где ] [ - целая часть выражения; 0.5 добавлено для округления до ближайшего целого.

Масштаб my означает, что при каждом изменении значения функции на величину my символ, изображающий точку на графике, смещается в очередную позицию по строке.

По вычисленным значениям ymin и my определим номер позиции k, в которой изображается ось 0x :

Для определения номера l позиции в строке, в которой надо изобразить значение yi,  воспользуемся формулой

.

 

 

 

 

 

 


Информация о работе Иформация о массивах