роботы робототехника микроконтроллеры

Работа с массивами данных.
Одномерные и двумерные массивы


Что такое массив?

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

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

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

Количество индексов элементов массива определяет размерность массива.

Массивы с двумя индексами называют двумерными. Такие массивы можно представить в виде таблицы, в которой номер строки соответствует первому индексу, а номер ячейки в строке (номер столбца) - второму индексу.

Чаще всего применяются одномерные массивы и двумерные массивы.

Объявление массива

Чтобы объявить массив (это необходимо для выделения памяти, в которой будут храниться значения элементов массива), следует указать его имя и размерность при помощи ключевого слова МАССИВ.

Пример:

массив А[10]

В данном примере будет объявлен одномерный массив А, состоящий из 10 элементов.

Пример:

массив М [4,5]

В данном примере будет объявлен двумерный массив М, который можно представить в виде таблицы, состоящей из 4-х строк по 5 ячеек в каждой строке.

Ограничение на размер одномерного массива - 1000 элементов, для двумерных - 1000х1000. В учебных целях лучше не использовать массивы более чем из 500 элементов, чтобы не замедлять время обработки. Все массивы в Game Logo имеют числовой тип (действительные числа).

Содержимое элементов массива при объявлении равно нулю.

Работа с массивами

После объявления массива каждый его элемент можно обработать, указав идентификатор (имя) массива и индекс элемента в квадратных скобках. Например, запись M[2] позволяет обратиться ко второму элементу массива M.

При работе с двумерным массивом указываются два индекса. Например, запись
M[3,4] делает доступным для обработки значение элемента, находящегося в третьей строке четвертого столбца массива M.

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

Присваивание значений элементам массива

А[3] = 15

Третьему элементу массива А будет присвоено значение 15.

М[2,4] = 25

Элементу массива М, находящемуся во второй строке четвертого столбца, будет присвоено значение 25.

Ввести значение в элемент массива можно также при помощи команды СПРОСИ.

спроси А[5]

Загрузка данных в массив

Загрузить данные в массив можно при помощи команды ЗАГРУЗИ.

Примеры для одномерного массива А.

загрузи в A
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
конец загрузки


загрузи в A
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
конец загрузки


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

Пример для двумерного массива М.

загрузи в M
15 17 25 36 24 56 78 56 36 24
56 78 56 36 24 15 17 25 36 25
15 17 25 36 24 56 78 56 36 24
78 56 36 24 15 17 17 25 36 25
36 24 56 78 24 56 78 56 36 24
39 78 56 36 24 25 15 15 89 71
15 17 25 36 24 56 78 56 36 24
78 56 36 24 15 17 17 25 36 25
36 24 56 78 24 56 78 56 36 24
39 78 56 36 24 25 15 15 89 71
конец загрузки



Заполнение массива с помощью циклов

Заполнение одномерного массив.

массив М [10]

повторить для x от 1 до 10 {
   M[x] = 555
}


Заполнение двумерного массив с помощью вложенных циклов.

массив М [5,7]

повторить для x от 1 до 5 {
   повторить для y от 1 до 7 {
      M[x,y] = 555
   }
}



Заполнение массива случайными числами

Заполнить массив случайными числами можно при помощи цикла.

Пример заполнения элементов массива А псевдослучайными целыми числами в диапазоне от 10 до 99:

массив А[100]
переменная х

повторить для х от 1 до 100 {
   А[х] = Int(случайное * 89) + 10
}



Вывод значений элементов массива

ПИШИ A[3]

На экран будет выведено значение третьего элемента одномерного массива А.

ПИШИ# A

Будут выведены значения всех элементов массива А.

Знак # в команде ПИШИ выводит массив целиком. Для одномерных массивов вывод осуществляется с переносом строк. Для двумерных - как есть в виде таблицы, поэтому возможен выход за пределы поля.

Вывод массива в графическом виде

Массив может быть выведен в виде ряда точек (или таблицы из точек для двумерных массивов), цвет которых соответствует значению элемента массива (диапазон от 0 до 15, все числа меньше 0 отображаются черным цветом, больше 15 - белым). Этот способ удобен для моделирования клеточных автоматов, для визуализации сортировки и во многих других случаях, когда требуется визуальное восприятие происходящего в массиве.

ТОЧКА# <имя массива> [, <координата х>, <координата у>]

Необязательные параметры <координата х> и <координата у> взяты в скобки. Они обеспечивают отступ от начала координат (верхнего левого угла).

Пример:

точка# M, 150, 50

Замена и копирование значений в массивах

Команда для замены во всем массиве одного значения на другое.

заменить в <имя массива> <число1> на <число2>

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

копировать <имя массива> в <имя массива>



Роботы на одной микросхеме своими руками




Copyright © myrobot.ru, 2005-2019


Яндекс.Метрика   Рейтинг@Mail.ru