Составить программу определения числа Фибоначчи по его номеру в последовательности - C#

Узнай цену своей работы

Формулировка задачи:

Числа Фибоначчи 1, 1, 2, 3, 5, 8, 13 и т.д. В общем случае числа Фибоначчи (fn) определяются формулами: f0=f1=1; fn=fn-1+fn-2 при n=2,3,... Составить программу определения числа Фибоначчи по его номеру в последовательности.
  int  i, n,f3;
            Console.WriteLine("Значение какого элемента ряда Фибоначчи вы хотите узнать?");
            n = Convert.ToInt32(Console.ReadKey());
            int f0 = 0;
            int f1 = 0;
            for (i=2; i<=n; i++)
            {
                int f2 = f0 + f1;
                f0 = f1;
                f1 = f2;
                f3 = f1 + f2;
            }
            Console.WriteLine("Число Фибоначчи {0}");
            Console.ReadKey();
Где здесь ошибка??

Решение задачи: «Составить программу определения числа Фибоначчи по его номеру в последовательности»

textual
Листинг программы
using System;
using System.Collections.Generic;
 
namespace PrintFib
{
    class Program
    {
        private static void Main()
        {
 
            int n = int.Parse(Console.ReadLine());
            string s = "";
            foreach (long fib in Fibonacci(n))
                Console.WriteLine(s += fib + " ");
            Console.ReadKey();
        }
 
        private static IEnumerable<long> Fibonacci(int n)
        {
            if (n <= 0)
                yield break;
            long fib_n_2 = 0, fib_n_1 = 1;
            for (int i = 1; i < n; i++)
            {
                var temp = fib_n_1;
                yield return fib_n_1 += fib_n_2;
                fib_n_2 = temp;
            }
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5
Похожие ответы