Nếu chúng ta có hai số nguyên A và B và B> =A, chúng ta phải tính chữ số cuối cùng của B! / MỘT! Khi giá trị của A =2 và B =4, thì kết quả là 2, 2! =2 và 4! =24, vậy 24/2 =12. chữ số cuối cùng là 2.
Như chúng ta biết rằng chữ số cuối cùng của giai thừa sẽ nằm trong tập hợp {0, 1, 2, 4, 6}, hãy làm theo các bước sau để giải quyết vấn đề này -
- Chúng tôi sẽ tìm ra sự khác biệt giữa A và B
- nếu diff> =5, thì câu trả lời là 0
- nếu không, hãy lặp lại từ (A + 1) đến B. Sau đó nhân và lưu trữ chúng.
- Chữ số cuối cùng của phép nhân sẽ là câu trả lời.
Ví dụ
#include<iostream> using namespace std; int findLastDigit(long long int A, long long int B) { int x = 1; if (A == B) return 1; else if ((B - A) >= 5) return 0; else { for (long long int i = A + 1; i <= B; i++) x = (x * (i % 10)) % 10; return x % 10; } } int main() { cout << "Last digit is: " << findLastDigit(2, 4); }
Đầu ra
Last digit is: 2