Dãy Số Fibonacci Trong C#

previous

Nội dung chính

  • Đề bài
  • Lời giải
  • Tính dãy số Fibonacci không dùng phương pháp đệ quy
  • Tính dãy số Fibonacci sử dụng phương pháp đệ quy

Đề bài

Viết chương trình tìm n số Fibonacci đầu tiên trong C#. Số nguyên dương n được nhập từ bàn phím.

Quy luật của dãy số Fibonacci: số tiếp theo bằng tổng của 2 số trước, 2 số đầu tiên của dãy số là 0, 1. Ví dụ: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ...

Dãy số Fibonacci trong C#

Lời giải

Có 2 cách để viết chương trình dãy số Fibonacci trong C#

  • Tính dãy số Fibonacci trong C# không dùng phương pháp đệ quy
  • Tính dãy số Fibonacci trong C# sử dụng phương pháp đệ quy

Tính dãy số Fibonacci không dùng phương pháp đệ quy

Ví dụ chương trình tính dãy số Fibonacci không sử dụng phương pháp đệ quy:

using System; namespace VietTutsCsharp { class Program { static void Main(string[] args) { int i; Console.Write("10 so dau tien cua day so Fibonacci: "); for (i = 0; i < 10; i++) { Console.Write("{0} ", fibonacci(i)); } Console.WriteLine(); Console.ReadKey(); } /** * Tinh so Fibonacci thu n * * @param n: chi so cua so Fibonacci tinh tu 0 * vd: F0 = 0, F1 = 1, F2 = 1, F3 = 2 * @return So Fibonacci thu n */ static int fibonacci(int n) { int f0 = 0; int f1 = 1; int fn = 1; int i; if (n < 0) { return -1; } else if (n == 0 || n == 1) { return n; } else { for (i = 2; i < n; i++) { f0 = f1; f1 = fn; fn = f0 + f1; } } return fn; } } }

Kết quả:

10 số đầu tiên của dãy số fibonacci: 0 1 1 2 3 5 8 13 21 34

Tính dãy số Fibonacci sử dụng phương pháp đệ quy

Ví dụ chương trình tính dãy số Fibonacci sử dụng phương pháp đệ quy:

using System; namespace VietTutsCsharp { class Program { static void Main(string[] args) { int i; Console.Write("10 so dau tien cua day so Fibonacci: "); for (i = 0; i < 10; i++) { Console.Write("{0} ", fibonacci(i)); } Console.WriteLine(); Console.ReadKey(); } /** * Tính số fibonacci thứ n * * @param n: chỉ số của số fibonacci tính từ 0 * vd: F0 = 0, F1 = 1, F2 = 1, F3 = 2 * @return số fibonacci thứ n */ public static int fibonacci(int n) { if (n < 0) { return -1; } else if (n == 0 || n == 1) { return n; } else { return fibonacci(n - 1) + fibonacci(n - 2); } } } }

Kết quả:

10 số đầu tiên của dãy số fibonacci: 0 1 1 2 3 5 8 13 21 34 previous

:

  • Check số nguyên tố trong C#
  • Tính giai thừa trong C#
  • Chuyển đổi hệ cơ số trong C#

Từ khóa » Viết Chương Trình C Tìm N Số Fibonacci đầu Tiên