Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Циклы с параметром. Оператор FOR
Вычисление конечных сумм и произведений Пример 9. Вычислить сумму . Значения величин A, B, m и n ввести с клавиатуры. Алгоритм решения этой задачи очевиден, и наглядно описывается с помощью приведенной ниже блок-схемой.
Sub pr9_1() Dim A As Double, B As Double, S As Double Dim n As Integer, m As Integer, i As Integer A = InputBox(“A=“) B = InputBox(“B=“) m = InputBox(“m=“) n = InputBox(“n=“) For I = m To n S = S + I ^ 2 / (n + i) Next i S = A + B * S MsgBox(“S= “ & S) End Sub
Пример 10. Найти сумму S всех целых чисел, кратных 3 на отрезке [M, N]. Эта задача похоже на предыдущую. Отличие состоит в том, что, просматривая все числа из интервала [M, N], мы должны проверить, делится ли число I без остатка на 3 прежде, чем его суммировать к S. Для проверки деления используется операция mod деление с остатком целых чисел (см. табл. 49 приложения 1). Таким образом, условие деления числа I на 3 без остатка будет иметь вид: I mod 3 = 0. Алгоритм решения этой задачи отличен от предыдущего наличием условия в теле арифметического цикла, и описан с помощью приведенной ниже блок-схемы.
Sub pr10_1() Dim M As Double, N As Double, S As Double Dim I As Integer M = InputBox(“M=“) N = InputBox(“N=“) For I = M To N If I Mod 3 = 0 Then S = S + I Next i MsgBox(“S= “ & S) End Sub
Пример 11. Для заданного значения N найти . Для вычисления Y, необходимо сделать следующие преобразование исходной формулы: (2-16)
Sub pr11_1() Dim Y As Double, I As Integer, N As Integer N = InputBox(“Введите N=“) Y = 1 For I = 0 To (N – 1) \ 2 If N Mod 2 = 1 Then Y = Y * (2 * I + 1) Else Y = Y * 2 * (I + 1) End If Next i If N Mod 2 = 1 Then Y = - Y MsgBox(“Y= “ & Y) End Sub
|