class Program
{
static void Main(string[] args)
{
Console.WriteLine("Fib 1: ");
Console.ReadLine();
}
long fibonacci1()
{
long a = 1, b = 2, c, answer = 0;
for (int i = 0; answer < 4000000; i++)
{
c = a + b;
if (c % 2 == 0)
{
answer += c;
}
a = b + c;
if (a % 2 == 0)
{
answer += a;
}
b = a + c;
if (b % 2 == 0)
{
answer += b;
}
}
return answer;
}
void fibonacci2()
{
long[] y = new long [1000000];
long x = 2;
long a = y[x - 2] = 1;
long b = y[x - 1] = 2;
long n = y[x];
long answer = 0;
for (x=2; answer < 4000000; x++)
{
n = a + b;
if(n % 2 == 0)
{
answer += n;
}
}
Console.WriteLine("Fib 2: " + answer);
}
}
Это то, что я придумал до сих пор.Я пытаюсь придумать 2 способа придумать ответ.
1) Как вы называете два метода?
2) Что вы, ребята, думаете о двух способах?Я не мог проверить это, но любые советы или подсказки (если я ошибаюсь) Не дайте мне ответ:)
Каждый новый термин в последовательности Фибоначчи генерируется путем добавления двух предыдущихтермины.Начиная с 1 и 2, первые 10 терминов будут:
1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...
Рассматривая слагаемые в последовательности Фибоначчи, значения которых не превышают четырех миллионов, найдите сумму четных слагаемых.