Основы и принципы работы в VBA. Часть 3: Методические указания к выполнению лабораторных работ, страница 5

                         Cells(4, i) = x(i)

                   Next i

End Sub

При раздвижке элементов массив приобретет следующий вид:

– 3   2   0   0   6   – 8   12   5   77.

После вставки суммы, получим массив:

– 3    2   0   14   6   – 8  12  5  77.

П р и м е р  3. Задан массив B из 30 целых чисел. Сформировать новый массив D из тех элементов исходного массива B, которые кратны своему индексу. Массив В ввести с помощью генератора случайных чисел в интервале [30; 80]. Исходный и результирующий массив распечатать на «Лист 1» рабочий книги в два столбца.

Особенностью этой задачи является то, что размер нового формируемого массива неизвестен  и не может быть заранее определен, поэтому для обозначения индексов исходного и нового массивов вводят две независимые переменные – I и J. Фрагмент алгоритма примера 3 представлен на рис. 10.3.

Программный код:

Option Explicit

Sub PR3()

Dim B(1 To 30) As Integer

Dim D(1 To 30) As Integer

Dim i As Integer, J As Integer

Randomize

For i = 1 To 30

    B(i) = Int(Rnd * (80 – 30) + 30)

    Cells(i, 1) = i: Cells(i, 2) = B(i)

Next i

J = 0

For i = 1 To 30

  If  B(i) Mod i = 0 Then J = J + 1 :   D(J) = B(i)

Next i

For i = 1 To J

    Cells(i, 3) = D(i)

Next i

End Sub

10.2. Индивидуальные задания

З а д а н и е  1. Разработать алгоритм и программу обработки одномерного массива A = {–5; 1; 0; –15; –24; –75; 80; 0; –23; 4; –31; 43} размером 12 элементов в соответствии с индивидуальным заданием. Ввод элементов массива выполнить считыванием с рабочего листа Excel. Вывод элементов исходного и результирующего массивов выполнить на рабочий лист электронной таблицы в два столбца с пояснениями:

1)  Удалить максимальный элемент массива A.

2)  В одномерном массиве А удалить последний из элементов, кратных пяти.

3)  Подсчитать количество отрицательных элементов массива A, заменить их единицами и вставить на 7-ю позицию число, равное количеству отрицательных элементов массива А.

4)  Определить сумму и количество элементов массива A, значения которых кратны трем. Затем вставить на 5-ю позицию число, равное сумме элементов массива А, увеличив массив.

5)  В одномерном массиве А подсчитать количество элементов, имеющих нечетные значения. Затем удалить элемент с порядковым номером 6.

6)  В одномерном массиве А удалить первый из элементов, кратных трем.

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

8)  Найти минимальный элемент одномерного массива А и удалить его. 

9)  Удалить из массива А = {0; 10; –2; 5,17; 0,01; –2,05; –8; 3,8; 9; 12,6} элемент, равный –8.

10)   Найти в массиве А первый нулевой элемент и заменить его суммой предшествующих.

11)   Определить сумму и количество отрицательных элементов массива A. Затем вставить на 3-ю позицию число, равное полученной сумме. Подсчитать количество нулевых элементов массива A, заменить их единицами и вставить на 7-ю позицию число, равное количеству нулевых  элементов массива А, раздвинув массив.

12)   Удалить из массива А = {0; 10; 2; 5; –17; 0,01; –2,05; –8; 3,8; 9; 12,6} первый отрицательный элемент, вывести на лист Excel его номер.

13)   Подсчитать количество положительных элементов массива A, заменить их нулями и вставить на 6-ю позицию число, равное количеству положительных элементов массива А.

14)   В одномерном массиве А удалить последний из элементов, кратных 10.

15)   Вычислить сумму массива Х с нечетными индексами и вставить на
5-ю позицию произведение элементов массива кратных пяти. X = {–15; 2; 3,75; –11,2; 0; –8,2; –5; 0,38; 0,9; 9,06; 25}.

16)   Вставить в массив А на 6-ю позицию константу  R равную –2,2  и у нового массива определить минимальный элемент и его порядковый номер.

З а д а н и е 2. Разработать алгоритм и программу обработки одномерных массивов в соответствии с индивидуальным заданием. Исходный массив заполнить целыми числами с помощью генератора случайных чисел в интервале
[–50; 50] в количестве 15 элементов. Вывод исходного массива и результатов выполнить в ячейки электронной таблицы Excel «Лист 1» в два столбца с пояснениями.

1)  Записать в массив Y элементы одномерного массива X, имеющие нечетные индексы, и вычислить сумму их квадратов.

2)  Задан массив X, сформировать новый массив V из тех элементов исходного массива, которые имеют в младшем разряде це­лой части ноль.

3)  Заданы два массива А и L. Сформировать массив D, элементы которого определяются по формуле

4)  Сформировать массив Р из отрицательных элементов массива X и удалить из массива Р третий элемент.

5)  Сформировать массив Р из элементов массива F больших четырех.

6)  Заполнить массив Н вещественными числами в интервале [–50; 50], сформировать новый массив F из тех элементов исходного массива, которые имеют дробную часть в интерва­ле [0,2; 0,37].

7)  Задан массив Y c помощью генератора случайных чисел в интервале [20; 50]. Сформировать массив А, элементы которого связаны с элементами исходного массива  Y  зависимостью , и найти сумму элементов массива Yi с нечетными индексами.

8)  Задан массив G, сформировать новый массив X из тех элементов исходного массива, которые не превышают кубов своих индексов. Из остальных элементов массива G сформировать новый массив А.

9)  Сформировать массив Р из элементов массива, А кратных 7, и найти их произведение.

10)  Сформировать массив С из элементов массива Н, меньших трех, и найти их сумму.

11)   Сформировать массив Р из положительных элементов массива А и удалить третий элемент массива Р.