ในการคำนวณแฟคทอเรียลใน C# คุณสามารถใช้ while วนซ้ำและวนซ้ำจนกว่าตัวเลขจะไม่เท่ากับ 1
นี่คือค่าที่คุณต้องการหาแฟกทอเรียล -
int res = 1;
while (n != 1) {
res = res * n;
n = n - 1;
} ข้างบน สมมุติว่าเราต้องการ 5! (5 แฟคทอเรียล)
เพื่อสิ่งนั้น n=5
วนซ้ำ 1 -
n=5 res = res*n i.e res =5;
วนซ้ำ 2 -
n=4 res = res*n i.e. res = 5*4 = 20
วนซ้ำ 3 -
n=3 res = res*n i.e. res = 20*3 = 60
ตัวอย่าง
ด้วยวิธีนี้ การทำซ้ำทั้งหมดจะให้ผลลัพธ์เป็น 120 สำหรับ 5! ดังตัวอย่างต่อไปนี้
using System;
namespace MyApplication {
class Factorial {
public int display(int n) {
int res = 1;
while (n != 1) {
res = res * n;
n = n - 1;
}
return res;
}
static void Main(string[] args) {
int value = 5;
int ret;
Factorial fact = new Factorial();
ret = fact.display(value);
Console.WriteLine("Value is : {0}", ret );
Console.ReadLine();
}
}
} ผลลัพธ์
Value is : 120