Cтраница 3
Число измерений называется рангом массива; число элементов в измерении называется экстентом массива в данном измерении. Целочисленный массив, длина которого равна рангу заданного массива, а каждый его элемент равен экстенту массива в данном измерении, называется формой массива. [31]
Заведем целочисленный массив А длины га, г-ый элемент которого ( г 0, га - 1) содержит 0, если в г-ой части нет точек из V, и номер j, если в г - ую часть попала точка г / j из V. [32]
Заведем целочисленный массив А длины га, г-ый элемент которого ( г 0, т - 1) содержит 0, если в г-ой части нет точек из У, и номер j, если в г-ую часть попала точка yj из V. [33]
Функция должна иметь параметрами целочисленный массив, начальное значение индекса и конечное значение индекса. Функция quicksort должна вызывать функцию partition, выполняющую разбиение массива. [34]
![]() |
Передача в функцию массива и его отдельного элемента ( часть 1 из 2. [35] |
В программе на рис. 6.13 показано различие между передачей целого массива и элемента массива. Сначала программа выводит пять элементов целочисленного массива а. После этого в программе main происходит повторный вывод массива а. Как показывают выводимые данные, функция modify Array действительно изменила элементы массива а. Функция modifyElcment умножает свой параметр на 2 и выводит новое значение. Обратите внимание, что когда элемент а [3] повторно выводится в функции main, его значение остается прежним, поскольку отдельные элементы массива передаются по значению. [36]
![]() |
Инициализация элементов массива при объявлении. [37] |
Элементы массива также могут инициализироваться при объявлении массива путем помещения вслед за его объявлением знака равенства и списка ( заключенного в фигурные скобки) инициализирующих значений, разделенных запятыми. Программа, представленная на рис. 6.4, инициализирует целочисленный массив десятью значениями и выводит его в табличной форме. [38]
Хессенберга Н; low, upp - целочисленные параметры, получаемые в процедуре balance, если она была применена. В противном случае low 1, ирр п; int - целочисленный массив размера пХ7, получаемый в процедуре elmhes; h - массив размера пХп, получаемый в процедуре elmhes и содержащий элементы матрицы Хессенберга Н и множители, используемые для ее получения из исходной матрицы А. [39]
Входные данные считываются в основной программе DBEM и в подпрограммах INPUT и BIPTS. В DBEM считывается информация, относящаяся к номеру задачи и названию задания, а также целочисленный массив JBUG, управляющий выдачей промежуточной информации. Эта информация может помочь новому пользователю понять принципы работы программы. Подпрограмма INPUT считывает данные, относящиеся к геометрии, граничным условиям и свойствам среды. [40]
Передача функции размера массива в качестве параметра имеет два преимущества: во-первых - это хороший стиль программирования, во-вторых - такую функцию можно использовать многократно. Функция, которая получает размер массива как параметр, может быть использована любой другой программой, которая сортирует одномерные целочисленные массивы произвольного размера. [41]
Чтобы проиллюстрировать использование указателей на функции, мы возьмем программу пузырьковой сортировки, приведенную на рис. 7.15, и создадим новый ее вариант, код которого приведен на рис. 7.26. Наша новая программа состоит из функций main, bubble, swap, ascending и descending. Функция bubble получает указатель на функцию - это может быть функция ascending или функция descending - в дополнение к двум другим параметрам: целочисленному массиву и размеру массива. Во время исполнения программа запрашивает у пользователя способ сортировки - в порядке возрастания или убывания. Если пользователь вводит число 1, функции bubble передается указатель на функцию ascending и производится сортировка переданного массива по возрастанию. Если пользователь вводит число 2, то в функцию bubble передается указатель на функцию descending и производится сортировка массива по убыванию. [42]
Каждую пару собственных векторов, соответствующих собственному значению lambda [ ], вычисляют методом обратной итерации, используя предварительное разложение матрицы А - lambda X I на треугольные с помощью процедуры bandetl. Основную часть тела процедуры unsray составляет программа реализации метода обратной итерации для вычисления левых собственных векторов. В целочисленных массивах / [ i ] и с [ i ] фиксируется число итераций, потребовавшихся для определения каждого правого и левого собственного вектора соответственно; это число ограничено величиной la, являющейся входным параметром процедуры. Уточнение собственных значений выполняется с помощью обобщенных отношений Релея с учетом вычисленных собственных векторов. [43]
Число элементов массива в одном измерении называется экстентом ( протяженностью) массива в данном измерении. Размер массива равен произведению его экстентов по всем измерениям. Совокупность экстентов - целочисленный массив, размер которого равен рангу исходного массива - называется формой массива. [44]
Мы могли бы поместить размер массива в глобальную переменную, которая была бы доступна для всей программы. Такой способ более эффективен, потому что не создается копия size для передачи в функцию. Но не все программы, которым требуется сортировать целочисленный массив, могут иметь глобальную переменную с нужным именем, и в таких программах функция не могла бы использоваться. [45]