Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Chương trình C tìm số chữ số 0 cuối trong giai thừa

Tìm số lượng chữ số 0 liên tiếp ở cuối của n! (giai thừa). Không cần tính giai thừa lớn, chỉ cần đếm số ước số 5 (vì 2 dư thừa). Công thức: n/5 + n/25 + n/125 + ...

Ví dụ: 4! = 24 → 0; 5! = 120 → 1; 6! = 720 → 1.

Chương trình

#include <stdio.h>

static int trailing_Zeroes(int n) {
    int count = 0;
    while (n > 0) {
        count += n / 5;
        n /= 5;
    }
    return count;
}

int main(void) {
    int n;
    printf("enter integer1: "); scanf("%d", &n);
    printf("Trailing zeros of %d! = %d\n", n, trailing_Zeroes(n));
    printf("enter integer2: "); scanf("%d", &n);
    printf("Trailing zeros of %d! = %d\n", n, trailing_Zeroes(n));
    return 0;
}

Kết quả

enter integer1: 5
Trailing zeros of 5! = 1
enter integer2: 6
Trailing zeros of 6! = 1