การนับจำนวนศูนย์ต่อท้ายในจำนวนแฟกทอเรียลทำได้โดยการนับจำนวน 2s และ 5s ในตัวประกอบของตัวเลข เนื่องจาก 2*5 ให้ 10 ซึ่งเป็น 0 ต่อท้ายในแฟกทอเรียลของตัวเลข
ตัวอย่าง
แฟกทอเรียลของ 7 =5040 จำนวนของ 0 ต่อท้ายคือ 1
ตามตรรกะของเรา 7! =2*3*4*5*6*7 มี 3 2s และ 1 5s ดังนั้นจำนวน 0 ต่อท้ายคือ 1
#include <iostream> using namespace std; int main() { int n = 45; int count = 0; for (int i = 5; n / i >= 1; i *= 5) count += n / i; cout<<"No of trailing 0s in " << n<< "! is " << count; return 0; }
ผลลัพธ์
No of trailing 0s in 24! is 10