Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Заповнення масиву даними




Дії над масивами.

Опис меж

Приклад. Опишемо тип масиву mymasyv, оголосимо постійний масив (масив-константу) zatratyтипу mymasyvі змінні - масиви а, a1типу mymasyv.

Описати масив можна в розділі опису типів type,а потім оголосити змінну в розділі опису змінних varабо в розділі констант const.

type mymasyv = array [ 1.. 10] of real;

const zatraty: mymasyv = (1.2, 1, 1, 2, 8, 2.4, 8.7, 3, 7, 1.3);

var а, al: mymasyv;

При оголошенні масиву не можна задавати межі індексів за допомогою змінних. Пам'ять під масив виділяється компілятором до виконання програми, а змінні набувають значень тільки в ході її виконання.

При описі масиву зручно використовувати заздалегідь певні іменовані константи, які задають кількість елементів.

Приклад. Опишемо двовимірний дійсний масив matrix з maxrow рядків і maxcol стовпців:

Const maxrow=10; maxcol=15;

Var matrix: array [1.. maxrow, l.. maxcol] of real;

Над масивами визначена єдина команда привласнення. Наприклад, команда а:= а1 всі значення масиву а1 привласнить відповідним елементам масиву а. Решта всіх операцій визначена тільки над елементами масиву.

Доступ до елементів масиву здійснюється так:

<Ім'я масива> [ <індекс елемента> ]

Індекс записують в квадратних дужках, наприклад, а[1] - перший елемент масиву а.

Елементу масиву можна привласнити значення а[1]:= 15.1.

Масив, описаний як константа, що типізується, вже містить дані.

Масиви, оголошені в розділі опису змінних, необхідно заповнити даними, перш ніж виконувати з ними які-небудь дії.

У будь-якому випадку для заповнення масиву використовується цикл. Найбільш зручний цикл for, причому для багатовимірних масивів застосовуються вкладені цикли.

1. Введення з клавіатури ("сліпий", без використання коментарів, на практиці введення елементів масиву зазвичай супроводжується виведенням відповідних пояснюючих текстів):

Ø вектора з 10 елементів:

for i:=1 to 10 do readln(а[i]);

Ø матриці розміром 5x4:

for i:=1 to 5 do

for j:=1 to 4 do readln(а[i,j]);

2. За допомогою датчика випадкових чисел.

Функція Random( <діапазон> ) повертає випадкове число Х типу Word, що задовольняє умові 0<X< діапазону. Перед зверненням до функції її необхідно ініціалізувати процедурою Randomize.

random 0.0<X< 1.0(тип real)
Random(b-a)+a a<X< b

Фрагмент програми заповнення одновимірного масиву х з п елементів випадковими числами в діапазоні від 0 до 99 включно виглядає так:

randomize; { ініціалізація датчика випадкових чисел }

for i:=1 to n do x[i]:=random(100);

3. Привласнення заданих значень. Нерідко доводиться заповнювати масив нульовими значеннями — обнуляти його. Для матриці розміром n*m:

for i:=l to n do

for j: =1 to m do а[i,j]:= random(100);




Поделиться с друзьями:


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


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



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




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