Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Тема: Методы и средства диагностирования силовой передачи и механизма управления

CONST

TYPE

...

TYPE

mas1 = array[1..100] of integer; { описатель для целочисленных

одномерных массивов длиной не более 100 элементов }

vector = array [1..30] of real; { описатель для вещественных

одномерных массивов длиной не более 20 элементов }

mas2 = array[1..8, 1..10] of Char; { описатель для символьных

двумерных массивов размерами не более 8 строк и 10 столбцов }

matrix = array[1..12] of vector; { описатель для вещественных

двумерных массивов размерами не более 10 строк и 20 столбцов. }

 

Последний описатель можно было бы задать без использования описателя типа vector:

 

matrix = array[1..12, 1..30] of real;

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

VAR { здесь выделяется место под все массивы }

Names: mas2;

Numbers, Ages: mas1;

Day_Tempr,Day_Wind: vector;

Tempr1996: matrix;

Создание массивов без использования специальных описателей типов

VAR Ball_Groop_1,B_M170: array[1..30] of real; { выделение места под два одномерных вещественных массива }

B_M175: array[1..30] of real;

Ball_Kurs: array[1:12, 1..30] of real; { выделение места под двумерный вещественный массив }

Массивы созданные одним оператором описания или разными операторами, но использующими общий писатель являются совместимыми, для них возможны операции присваивания, операции отношения (только равно и не равно). Для массивов описанных выше можно написать операторы:

Ball_Groop1:= B_M170;

Numbers:= Ages;

If Day_Tempr=Day_Wind then...

Но недопустим ни один из операторов:

 

Ball_Kurs:= Tempr1996;

Ball_Groop1:= B_M175;

B_M175:= B_M170;

While B_M175<> B_M170 do...

Следует отметить, что оператор присваивания переписывает значения из элементов массива, стоящего в правой части в соответствующие элементы массива, имя которого указано в левой части оператора присваивания. Два совместимых массива равны (и результат сравнения равен TRUE), если каждый элемент одного массива равен соответствующему элементу второго массива. При нарушении равенства хотя бы для одной пары элементов результат сравнения - FALSE.

 

Заполнение массива данными

 

Заполнить массив значениями можно тремя способами (как и любую переменную).

Во-первых, можно задать все элементы массива, или начало массива при описании его в разделе CONST. ( В дальнейшем заданные значения можно изменить.)

 

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

A1: mas = (-5,4,-3,2,-1);

 

Во-вторых, элементы массива можно заполнить с помощью оператора присваивания:

 

for I:= 1 to M do

for j:= 1 to N do

A2[I,j]:= 1;

Наконец, в-третьих, массив можно полностью или частично заполнить вводом (с клавиатуры или из файла). В этом случае, заполнение включает ввод количества элементов массива (с проверкой допустимости введенного значения) и ввод самих элементов массива в указанном количестве. Если ввод значений предусмотрен с клавиатуры, перед каждым оператором чтения должен быть запрос на ввод. (Работа с файлами рассмотрена в главе 9). Пример заполнения массива числами с клавиатуры:

 

CONST
MIN=2;

MAX=20

...

BEGIN

...

Repeat

Writeln(' Введи длину массива');

Read(N);

if(N<MIN) or (N>MAX) then

Writeln('Недопустимое количество, введите снова');

Until (N>MIN) and (N<=MAX); { здесь MIN и MAX задают диапазон изменения индекса

в одномерном массиве }

for i:=1 to N do

begin

WriteLn(‘Введите очередное число в массив’);

ReadLn(A3[i]);

end;

...

 

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

<== предыдущая лекция | следующая лекция ==>
Основные определения. Массивом называется совокупность однотипных простых данных, имеющих общее имя и расположенных в памяти ЭВМ подряд; обращение к элементам | Вопрос 1:Диагностирование увеличителя крутящего момента, коробки передач, главной и конечной передач
Поделиться с друзьями:


Дата добавления: 2014-01-04; Просмотров: 279; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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