Kod: Zaznacz cały
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
String line;
int n;
Console.WriteLine("Podaj, ktory wyraz ciagu Fibonacciego obliczyc");
line = Console.ReadLine();
n = int.Parse(line);
Console.WriteLine(n + "-ty wyraz ciagu Fibonacciego: " + Fibonacci(n));
Console.ReadLine();
}
public static int Fibonacci(int n)
{
if (n <= 2)
{
return 1;
}
else
{
int a = 1;
int b = 1;
int c = 0;
for (int i = 0; i < n - 2; i++)
{
c = a + b;
a = b;
b = c;
}
return c;
}
}
public static int Fibonacci1(int n)
{
if (n == 0)
return 0;
if (n == 1 || n == 2)
return 1;
int[,] A = new int[2, 2] { { 0, 1 }, { 1, 1 } };
int[,] B = (int[,])A.Clone();
int[,] C = new int[2, 2];
n -= 2;
for (int i = 1; i <= n; i++)
{
C[0, 0] = B[0, 0] * A[0, 0] + B[0, 1] * A[1, 0];
C[0, 1] = B[0, 0] * A[0, 1] + B[0, 1] * A[1, 1];
C[1, 0] = B[1, 0] * A[0, 0] + B[1, 1] * A[1, 0];
C[1, 1] = B[1, 0] * A[0, 1] + B[1, 1] * A[1, 1];
B = (int[,])C.Clone();
}
return C[1, 1];
}
}
}