Мозг
Просветленный
(45414)
11 лет назад
Посчитать нужно сумму только чётных чисел.
Тогда a0 = 2 (первое чётное число из этого ряда)
an = 1000 (последнее чётное число из этого ряда)
n = 1000 / 2 = 500 (количество чётных чисел, каждое второе - чётное) .
Тогда сумма N = (a0 + an) / 2 * n
(a0 + an) / 2 - так мы найдём среднее арифметическое значение для этой последовательности, умножив на количество чисел в последовательности, найдём сумму.
N = (2 + 1000) / 2 * 500
N = 250500
Никаких VB я не знаю вообще.
У тебя цикл начинается с Do, дальше прибавляется очередной член арифметической прогрессии (n = n +2). Затем должна идти проверка очередного числа на превышение значения в 1000.
Может и неправильно синтаксически напишу (понятия не имею, как это пишется на VB):
Dim n As Integer // здесь будем хранить сумму
Dim x As Integer // здесь будем хранить очередное число, которое должно быть
прибавлено
n = 0
x = 0
Do
n = n + x // сумму с учётом этого очередного числа
x = x + 2 // очередное число для сложения
If (x > 1000) Then Exit Do
Loop
MsgBox n
End Sub
На будущее - математика в помощь!