VBA Сумма четных чисел Фибоначчи до суммы < 100

#excel #vba #fibonacci

#excel #vba #фибоначчи

Вопрос:

Мне нужна ваша помощь относительно моего домашнего задания. Цель состоит в том, чтобы суммировать все четные числа из последовательности Фибоначчи до тех пор, пока сумма не достигнет < 100

Я создал формулу, как показано ниже

 Sub fibbo()

Dim sum As Long
Dim a As Long
Dim b As Long
sum = 0

    Do While sum < 100

        sum = a   b
        a = b
        b = sum
        a = a   1

    Loop

Range("A1").Value = sum

End Sub
  

Проблема в том, что сумма превышает 100.

Пожалуйста, помогите. Заранее благодарю вас.

Комментарии:

1. удалите While из Do и добавьте While sum a < 100 в Loop .

2. Или просто замените Do While sum < 100 на Do While a b < 100 .

3. Оба приведенных выше метода возвращают 88

4. Кстати, это не только делает четные. Каждый третий цикл после второго возвращает нечетное число для СУММЫ.

5. Вам также нужно будет изменить a = a 1 на a = IIf(a = 0, 1, a) другое, из-за чего последовательность будет неправильной.