Едномерни и двумерни масиви

масив # 151; е номериран последователност на стойности от същия тип, означен с едно име. елементите на масива са подредени в последователни паметта са обозначени с името на масива и индекс. Всяка от стойностите, съставляващи масива се нарича компонент (или масив елемент).

Масив от данни в програмата се разглежда като променлива от структуриран вид. Масивът се определя име, с което да се отнася до и данни масив като цяло и на всеки от компонентите.

Като цяло, на масива - единна, подреден структуриран тип данни с директен достъп до елементите.

Променливи, представляващи елементи на масиви, наречени променлива с индекси в За разлика от прости променливи на данните в началното програмата. Индекс нотация масиви компонент може да бъде постоянно, променливо или експресията на тип последователност (число, булева, знак, ENUM, гама).

Ако само един от неговия сериен номер, присвоен на всеки елемент на масива, а след това на масива се нарича линейна. Като цяло, броят на индекси на масив елементи определя размера на масива. На тази база масиви са разделени на едномерен (линеен), двуизмерен, триизмерен и т.н.

Пример: числова последователност дори естествени числа 2, 4, 6. N е линейна решетка, чиито елементи може да бъде определена за [1] = 2, А [2] = 4, А [3] = 6. А [К] = 2 * (К + 1), където R # 151; брой елемент, и 2, 4, 6. N # 151; стойности. Index (поредният номер на елемента) е написано в скоби след името на масива.

Например, [7] # 151; А седмия елемент на масива; D [6] # 151; шестия елемент масив D.

За поставяне на масива в областта на компютърната памет разпределена памет, чийто размер зависи от вида, продължителността и броя на компонентите масив. В Pascal, тази информация е дадена в раздела Декларации. Масивът е описан, както следва:

Най-често, индексът на вид е диапазон. Например, # 151; описва масив, състояща се от 5 V. елементи и R. характер решетка, състояща се от 34 елемента. Масивът се разпределя 5 * 6 = 30 байта памет за масив R на # 151; 1 * 34 = 34 байта памет.

Основен тип масив елементи може да бъде всеки прост или структуриран, с файла изключение.

В допълнение, масив може да бъде обявена, използвайки собствените си вид:

Напълнете масив, както следва:

1) с оператор задача. Този метод на пълнене елементи масив е особено полезно, когато между елементите има някаква зависимост, например, аритметична или геометрична прогресия или елементи, свързани помежду си повторение връзка.

Задача 1. Попълнете едномерен масив от елементи, съответстващи на следната връзка:

Друго изпълнение на задача от стойности на елементите на масив # 151; стойности за пълнене, получени с използване на случайни числа.

Проблем 2. Попълнете едномерен масив, използвайки сонда случайни числа, така че всички негови елементи са различни.

2) стойности на входа на елементите на масив с клавиатура обикновено се използват, когато няма зависимост между елементите. Например, последователност номера 1, 2, -5, 6, -111, 0 може да бъде въведен в паметта, както следва:

Над елементи масиви често извършвани действия, като например

а) стойностите на търсенето;

б) сортиране на елементите в възходящ или низходящ ред;

в) броят на елементите на масив, които отговарят на предварително определено състояние.

Сумата на елементи на масива може да бъде изчислена по формулата S = S + A [I] е зададен първоначално S = 0. Броят на елементи в масива може да бъде изчислена по формулата К = 1, първоначално определяне на К = 0. Елементите на продукта на масива може да бъде изчислена по формулата P = P * A [I]. първоначално определяне на P = 1.

Задача 3. Дан линеен масив от цели числа. Изчислете колко различни номера.

Тест: N = 10; масив елементи - 1, 2, 2, 2, 1, 1, 0, 34, 3, 3.: 6.

Задача 4. Дан линеен масив. Подреди елементите във възходящ ред.

Тест: N = 10; масив елементи - 1, 2, 2, 2, 1, 1, 0, 34, 3, 3.

A: -1, -1, 0, 1, 2, 2, 2, 3, 3, 34.

Ако два масива са масиви от еквивалентни видове, е възможно да се определи един масив в друг. Освен това, всички компоненти, предназначени масив се копират в масива, която се обозначава с стойност. видове масиви са еквивалентни ако тези масиви са описани или описани във връзка идентификатор от същия тип. Например, в описанието на видовете променливи А, В са еквивалентни, и следователно тези съвместими променливи задача; тип променливи C, D и са едни и същи, и следователно тези променливи също са съвместими задача. Но вида на променливи С, D не са еквивалентни на вида на заместителите А, В, Е, обаче, например, А и D не са съвместими задача. Тези характеристики могат да бъдат взети предвид при работа с масиви.

При работа с масиви, е препоръчително да се използват процедури и функции. Тук е процедура за проба:

Задача 5. Дан линеен масив. Намери: размерът на минималните и максималните елементи; броя на отрицателните елементи, стои на равна основа. Промяна на масива като премахва от него странни елементи.

При решаването на практически проблеми, често трябва да се справят с различни таблици с данни, които са математически еквивалент на матрицата. Този начин на организиране на данни, в която всеки елемент се определя от ред и колона номер, в пресечната точка, където се намира се нарича двумерен масив или маса.

Например, планетите Слънчевата система, данните, представени със следната таблица:

Dist. до Слънцето

Те могат да бъдат поставени в паметта на компютър, използвайки концепцията за двумерен масив. Елемент позиция в масива се определя от два индекса. Те показват номера на реда и номера колона. Индекси разделени със запетая. Например: [7, 6], D [56, 47].

Изпълнен двумерен масив е подобен на едномерен: клавиатура, използвайки оператора на задача. Например, в резултат на изпълнението на програмата: елементи масив вземат стойностите на А [1, 1] = 457; А [1, 2] = 457; А [2, 1] = 458; А [2, 2] = 458; А [3, 1] = 459; А [3, 2] = 459.

В изискванията за памет масив описанието, дадено за двумерен масив, и името на масива посочено в квадратни скоби диапазони индекс на климата.

В инженерни и математически изчисления често използвани променливи с повече от два индекса. В решаването на проблемите на компютрите такива променливи са представени като компоненти на три, съответно четири групи и т.н.

Въпреки това, описанието на масива под формата на многоизмерна структура е само за удобство на програмиране, в резултат на желанието да се възпроизвеждат най-точните в програмата обективно съществуващите връзки между елементите на данните проблем да бъде решен. Що се отнася до набор памет на изображението на компютъра, след като едномерни и многомерни масиви се съхраняват в компонент форма на линейна последователност, и основната разлика между едномерни и многомерни масиви не трябва компютърна памет. Въпреки това, по реда на елементите за съхранение на многомерни масиви, че е важно да представите себе си. В повечето езици за програмиране реализира общо правило, който определя реда на съхранение в елементите на масив памет: елементите на многомерни масиви, съхранени в паметта на последователност, съответстваща на по-чести промени на по-младите индекси.

Задача 6. Fill матрица за п съгласно следния модел:

Задача 7. Дана неразделна квадратна матрица. Намери във всеки ред и най-големият елемент за промяна на мястото му с елемент от главния диагонал.

Задача 8. При един правоъгълен неразделна размер маса m х п. Посочете колоната (го наричат ​​една стая), където минималният брой елементи, сумата от множество индекси.

Контролни въпроси и задачи

  1. Какво е масив?
  2. Защо масив е структуриран тип данни?
  3. Какъв е размерът на масива? Има ли някакви ограничения за размерите на масива?
  4. Какъв тип масив елементи може да бъде?
  5. Какви видове индекси могат да бъдат елементи на масив?
  6. Какви са прости типове данни се отнасят за сериала?
  7. Какви методи може да бъде запълнена с множество? Дайте примери.
  8. Как да се определи минимално количество памет, запазено за масива?
  9. Какви действия обикновено се извършва на елементите на масив?
  10. Може да бъде елемент на масива с една?
  11. В такъв случай масивите са съвместими задача?
  12. Нека елементите на масив А ([1], в [2], в [3], в [4]) са, съответно, х. -х. х 2. -x 2. Каква ще бъде равна на стойността на израза, когато х = 2?
  13. Може ли край на двумерен масив чрез подреждане на външния контур на колоните, и вътрешния # 151; в редове?
  14. Именно и недвусмислено формулирани изявление на проблема, решението на който е включено в програмата:
  15. Препоръчително е да се използва дали вложени цикъла, ако се извърши заобикаляйки само по главния диагонал на квадратна матрица? един ред от матрицата? една колона на матрицата?

Сайта е създаден в uCoz система