Fibonacci Sətirləri Yaradılması#8295

Fibonacci Sətirləri Yaradılması (Həll təhlili)

Reallaşdırılmış rekursiv bir funksiya yaradacağıq ki, -ci Fibonacci sətirini generasiya edir.

Alqoritmin həyata keçirilməsi

f funksiyası -ci Fibonacci sətirini qaytarır.

string f(int n)
{
  if (n == 0) return "a";
  if (n == 1) return "b";
  return f(n-1) + f(n-2);
}

Proqramın əsas hissəsi. Giriş dəyəri -i oxuyuruq və -ci Fibonacci sətirini çap edirik.

cin >> n;
cout << f(n) << endl;

Alqoritmin həyata keçirilməsi — STL-siz

f funksiyası -ci Fibonacci sətirini qaytarır.

void f(int n)
{
  if (n == 0)
  {
    printf("a"); return;
  }
  if (n == 1)
  {
    printf("b"); return;
  }
  f(n-1);
  f(n-2);
}

Proqramın əsas hissəsi. Giriş dəyəri -i oxuyuruq və -ci Fibonacci sətirini çap edirik.

scanf("%d",&n);
f(n); printf("\n");

Java üzrə həyata keçirmə

import java.util.*;

public class Main
{
  static String f(int n)
  {
    if (n == 0) return "a";
    if (n == 1) return "b";
    return f(n - 1) + f(n - 2);
  }
  
  public static void main(String[] args)
  {
    Scanner con = new Scanner(System.in);
    int n = con.nextInt();
    System.out.println(f(n));
    con.close();
  }
}

Python üzrə həyata keçirmə

f funksiyası -ci Fibonacci sətirini qaytarır.

def f(n):
  if n == 0:
    return "a"
  elif n == 1:
    return "b"
  else:
    return f(n-1) + f(n-2)

Proqramın əsas hissəsi. Giriş dəyəri -i oxuyuruq və -ci Fibonacci sətirini çap edirik.

n = int(input())
print(f(n))