การสร้างลำดับฟีบอนัชชี (Fibonacci) ใน C#
ลำดับฟีบอนัชชีเป็นลำดับที่แต่ละตัวเป็นผลรวมของสองตัวก่อนหน้า เริ่มจาก 0 และ 1 (0, 1, 1, 2, 3, 5, 8, 13, 21, 34, ...)
ตัวอย่างโค้ดแสดง 10 ตัวแรก
using System;
public class Demo
{
public static void Main(string[] args)
{
int val1 = 0, val2 = 1, val3, i, n;
n = 10;
Console.WriteLine("10 ตัวแรกของลำดับฟีบอนัชชี:");
Console.Write(val1 + " " + val2 + " "); // พิมพ์ 2 ตัวแรก
for (i = 2; i < n; ++i)
{
val3 = val1 + val2;
Console.Write(val3 + " ");
val1 = val2;
val2 = val3;
}
}
}
ผลลัพธ์
10 ตัวแรกของลำดับฟีบอนัชชี:
0 1 1 2 3 5 8 13 21 34
คำอธิบายอัลกอริทึม
- กำหนดค่าเริ่มต้น
val1 = 0และval2 = 1 - พิมพ์ค่าเริ่มต้น 2 ตัวแรก
- ใช้ลูป
forตั้งแต่ 2 ถึง n-1 - คำนวณค่าถัดไป:
val3 = val1 + val2 - อัปเดตค่า:
val1 = val2,val2 = val3
ขยายความสามารถ
สามารถปรับเปลี่ยนตัวแปร n เพื่อแสดงจำนวนที่ต้องการ หรือสร้างเป็นเมธอดที่คืนค่า List<int> เพื่อนำไปใช้งานต่อได้