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

Kiểm tra số có thuộc cấp số cộng cho trước không bằng C++


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