Основные функции для работы с массивами

Лабораторная работа №5

Тема: Массивы. Функции работы с одномерными массивами.


Массив (Array) - это набор данных одного и того же типа. Массивы могут быть разной размерности. Одномерный - просто набор чисел, двумерный - таблица с этими числами и тп. На каждую размерность в массиве может приходиться максимум элементов.
Можно создать массив из данных следующих типов: numeric, Boolean, path, string, waveform, и cluster.


Элементы в массиве упорядочены, каждый из них имеет номер (index). Номера начинаются с нуля.

 

Основные функции для работы с массивами

Рассмотрим основные функции, которые используются при работе с массивами в LabVIEW. Все эти функции находятся в палитре Functions>>Programming>>Array.

 


Array Size - возвращает число элементов в массиве. Если массив многомерный, то результатом выполнения функции будет массив, число элементов в котором равно размерности. Например, результатом применения этой функции к следующему одномерному массиву [1,6,5,3,4] будет число 5.

 


Initialize Array -создает массив нужной размерности с нужным числом элементов в каждой размерности и заполняет его значениями, определяемыми терминалом element. Чтобы добавить измерение, нужно "растянуть" кубик функции.

 


Array Subset - возвращает часть массива (подмассив элементов), начиная с некого (определяется терминалом index) и длиной, определяемой терминалом length. Например, если применить эту функцию к массиву [1,6,5,3,4] с аргументами index=1 и length=2, результатом будет массив [6,5].

 


Build Array - с помощью этой функции можно добавить элементы в массив, или построить из нескольких массивов массив большей размерности. Кубик можно растягивать. Для того, чтобы при соединении двух массивов получить массив той же размерности, нужно щелкнуть правой кнопкой мыши на функции и в контекстном меню выбрать "Concatenate Inputs".

 


Index Array - выводит элемент или подмассив массива с указанным номером (index). Пример: для нашего массива [1,6,5,3,4] эта функция с аргументом 2 выведет число 5.

Max & Min – выводит максимальное и минимальное значение массива, а также их индексы.

Пример: дан массив [2,3,7,1,9,6,8,4], функция выведет числа 1 с индексом 4, как минимальное и 9 с индексом 5, как максимальное.

 

Sort 1D Array – сортирует элементы в массиве в порядке возрастания и выводит отсортированный массив.

Пример: дан массив [2,3,7,1,9,6,8,4], на выходе получим массив: [1,2,3,4,6,7,8,9].

 

Search 1D Array – ищет заданный элемент массива и выдаёт его индекс.

 

 

Функция удаляет элемент или подмассив из массива (array) и возвращает уменьшенный массив на выходе array w/subset deletedиудаленный элемент или подмассив на выходе deleted partion. Функция изменяет число индексов в соответствии с размерностью подключаемого к её входу массива.

Вход length определяет количество удаляемых элементов, строк или страниц. Вход index определяет номер элемента для удаления.

 

Insert Into Array – функция вставляет элемент или подмассив во входной массив, начиная с точки, определённой на входе index. Если входы не определены, то функция добавляет новый элемент или подмассив к концу входного массива.

 

Полиморфизм
Функции, которые находятся в палитрах Functions>>Express Numeric и Functions>>All Functions>>Numeric - полиморфные. Это означает, что на вход этим функциям можно подавать данные разных типов, в том числе не только скалярные - но и массивы. Например, функцию add можно использовать для сложения массива и скаляра, или двух массивов. Пример: при сложении массива [1,3,2] и числа 2 получится массив [3,5,4]. При сложении двух массивов [1,3,2] и [3,5,4] получится массив [4,8,6]. Если в двух массивах разное число элементов, то в результате сложения получится массив, число элементов в котором равно числу элементов в самом маленьком из двух массивов. Например, при сложение массива [3,1,2,3] с массивом [1,2,1] получим в результате [4,3,3].

 

Задания.

Задание 1.

Создать массив размерностью от 0 до 10, элементы массива – целочисленные значения от 0 до 100. Вывести сам массив, подсчитать его размерность. Определить максимальный и минимальный элемент массива.

Выполнение:

Для создания массива воспользуемся структурой For Loop (ProgrammingStructuresFor Loop), количество циклов этой структуры будет определять размерность массива.

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

Для того, чтобы определить случайное количество циклов от 0 до 10, нужно подать целочисленное значение на вход N цикла For Loop.

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

Для вывода массива создаём индикатор из контекстного меню на выходе цикла.

Для определения размерности воспользуемся функцией Array Size (ProgrammingArrayArray Size)

Для определения максимального и минимального значений элементов массива воспользуемся функцией Max & Min(ProgrammingArrayMax & Min).

Программа готова, проверяем работу, запускаем и смотрим результат на Лицевой панели.

 

Задание 2.

Создать массив из 10 случайных целочисленных значений от 0 до 30. Вывести получившийся массив и массив с элементами в обратном порядке.

 

Задание 3.

Создать массив из 15 случайных целочисленных значений от 0 до 20. Вывести получившийся массив и массив с элементами, рассортированными в порядке возрастания.

 

Задание 4.

Создать массив из 10 случайных целочисленных значений от 0 до 100. Вывести получившийся массив и отдельно 2, 5 и 8 элементы массива.

Index Array выводит элементы массива по их индексу, при этом на вход Index нужно подавать номер элемента (n-1), т.к. нумерация массива начинается с нуля.

Пример: дан массив [1,3,4,2,5,6] для вывода третьего элемента массива (4) нужно на вход Index функции Index Array подать 2.

 

Задание 5.

Создать два массива целочисленных значений, один – размерностью 10, содержащий элементы массива от 0 до 100, другой – размерностью 3, содержащий элементы от 0 до -100.

Вывести эти массивы по отдельности, а также вставить элементы второго массива в первый, начиная со второго номера.

Пример: 1 массив: [12,34,54,23,37,32,76,98,54,43]

2 массив: [-32,-51,-94]

Вставленный 2 массив в первый, начиная со второго номера: [12,-32,-51,-94,34,54,23,37,32,76,98,54,43]

 

Задание 6.

Создать массив из 15 случайных целочисленных значений от 0 до 100. Вывести получившийся массив, а также массив из которого удалили 3, 5, 8, 10-15 элементы.