Computer >> Máy Tính >  >> Lập trình >> C ++

Tìm (1 ^ n + 2 ^ n + 3 ^ n + 4 ^ n) mod 5 trong C ++

Trong hướng dẫn này, chúng ta sẽ giải quyết vấn đề sau.

Cho một số nguyên n, chúng ta phải tìm (1 n +2 n +3 n +4 n )% 5

Số (1 n +2 n +3 n +4 n ) sẽ rất lớn nếu n lớn. Nó cũng không thể phù hợp với các số nguyên dài. Vì vậy, chúng tôi cần tìm một giải pháp thay thế.

Nếu bạn giải phương trình cho các số 1, 2, 3, 4, 5, 6, 7, 8, 9, bạn sẽ nhận được các giá trị tương ứng là 10, 30, 100, 354, 1300, 4890, 18700, 72354, 282340.

Quan sát kết quả của phương trình một cách cẩn thận. Bạn sẽ thấy rằng chữ số cuối cùng của kết quả phương trình lặp lại cho mỗi số thứ 4. Đó là tính tuần hoàn của phương trình.

Nếu không thực sự tính toán phương trình, chúng ta có thể nói rằng

nếu n% 4 ==0 thì (1 n +2 n +3 n +4 n )% 5 sẽ là 4 khác 0 .

Ví dụ

Hãy xem mã.

#include <bits/stdc++.h>
using namespace std;
int findSequenceMod5(int n) {
   return (n % 4) ? 0 : 4;
}
int main() {
   int n = 343;
   cout << findSequenceMod5(n) << endl;
   return 0;
}

Đầu ra

Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau.

0

Kết luận

Nếu bạn có bất kỳ câu hỏi nào trong hướng dẫn, hãy đề cập đến chúng trong phần bình luận.