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