#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)
другое, из-за чего последовательность будет неправильной.