Giả sử chúng ta có số hạng đầu tiên của cấp số cộng (AP) và công sai. Chúng ta phải kiểm tra xem số cho trước n có phải là một phần của AP hay không. Nếu số hạng đầu a = 1, công sai d = 3, và số hạng x = 7 sẽ được kiểm tra. Câu trả lời là có.
Để giải quyết bài toán này, chúng ta sẽ làm theo các bước sau:
- Nếu d = 0, và a = x, thì trả về true, ngược lại false.
- Ngược lại, nếu d khác 0, thì nếu x thuộc dãy x = a + n * d, với n là số nguyên không âm, chỉ khi (x - a)/d là số nguyên không âm.
Ví dụ
#include <iostream> using namespace std; bool isInAP(int a, int d, int x) { if (d == 0) return (x == a); return ((x - a) % d == 0 && (x - a) / d >= 0); } int main() { int a = 1, x = 7, d = 3; if (isInAP(a, d, x)) cout << "The value " << x << " is present in the AP"; else cout << "The value " << x << "is not present in the AP"; }
Kết quả
The value 7 is present in the AP