Информатика: Сборник лабораторных работ по программированию в среде Visual Basic for Applications, страница 19

Примеры:

Dim a(10) As Integer

Dim b(10, 5) As Integer

Dim c(1 TO 20) As Double

В том случае, когда   размерность массива не указана, необходимо  до первого использования переменной массива в программе массив переопределить с помощью оператора ReDim.

Рассмотрим пример с заданной числовой последовательностью.

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

Для задания последовательности необходимо, чтобы были известны хотя бы два члена последовательности – первый и второй.

Формула, которая позволяет вычислить каждый член последовательности, называется рекуррентной.

Пример 4.

Дана числовая последовательность:

a1={ Cos(2)/2; a2=Sin(3)/5; …;a n = a n-1 – 4*a n-2}

Найти сумму отрицательных элементов при n=37.  (Ответ : -3,604246Е+09).


Блок-схема 4:

                                                                                                     

Программа 4:

Sub pr4()

Sheets("Лист1").Cells.Clear

Dim N, i As Integer

Dim A(), S As Double

N = Val(InputBox("Введите число"))

ReDim A(1 To N)                    ‘ Переопределение   массива

A(1) = Cos(2) / 2

A(2) = Sin(3) / 5

For i = 3 To N

A(i) = A(i - 1) - 4 * A(i - 2)

Next i

Range("A1") = "Числовая последовательность:"

S = 0

For i = 1 To N

Cells(3, i) = A(i)

If A(i) < 0 Then S = S + A(i)

Next i

Range("A5") = "S отрицательных чисел равно:"

Cells(7, 1) = S

MsgBox "См. последовательность на Листе 1"

End Sub

Контрольные вопросы :

1.  Определение циклического процесса.

2.  Типы циклов.

3.  Циклы со счетчиком.

4.  Блок-схема цикла со счетчиком.

5.  Оператор FOR…NEXT.

6.  Сложные циклы.

7.  Определение массива. Виды массивов.

8.  Описание массивов.

9.  Определение числовой последовательности.

10.Рекуррентная формула.

Задачи для самостоятельного решения .

1. В ячейках А1 : А10  записаны числа.

Составить блок-схему и написать программу сортировки данного массива по убыванию.

2. Просуммировать отдельно положительные и отрицательные элементы массива чисел, записанных в блоке ячеек B2 : B12.  Полученные суммы записать соответственно в ячейки A1 и A2.  Составить блок-схему и написать          программу.

3. В матрице, записанной в блоке ячеек А1 : F4, найти  произведение положительных чисел и количество нулей. Составить блок-схему и написать программу.

4. Дана числовая последовательность

{ a1 = 0, a2 = 4,…,a n = a n-1 – 3 a n-2}.

Составить блок-схему и  найти сумму отрицательных  элементов   при   n =  63.

Ответ:  -1,179872Е+15.


Лабораторная работа № 5. Циклы с условием

Циклы с неизвестным числом повторений

Рассматриваемые в данной лабораторной работециклы (циклы с предусловием, циклы с постусловием, цикл For Each…Next) используют тогда, когда неизвестно число повторений цикла.

1. Циклы с предусловием

Циклы с предусловием – это такие циклы, в которых до начала выполнения тела цикла проверяется условие выполнения следующего шага цикла. Если значение этого условия истинно (т.е. условие выполняется), то выполняется тело цикла. В теле цикла должно изменяться значение, по крайней мере, одной переменной, которая влияет на значение условия (иначе произойдет «зацикливание»). Далее опять проверяется условие выполнения цикла, и если значение условия ложно, то осуществляется выход из цикла.

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