สมมติว่าเรามีจำนวนเต็มสามจำนวน a, b และ c สมมติว่าในลำดับอนันต์ a คือพจน์แรก และ c คือผลต่างร่วม เราต้องตรวจสอบว่า b อยู่ในลำดับหรือไม่ สมมติว่าค่าเหมือน a =1, b =7 และ c =3 จากนั้นลำดับจะเป็น 1, 4, 7, 10, … ดังนั้น 7 จึงอยู่ในลำดับ ดังนั้นผลลัพธ์จะเป็น 'ใช่'
เพื่อแก้ปัญหานี้ เราต้องปฏิบัติตามสองขั้นตอนนี้ -
-
เมื่อ c =0 และ a =b ให้พิมพ์ yes และถ้า a ไม่เหมือนกับ b ให้คืนค่า no
-
เมื่อ c> 0 ดังนั้นสำหรับจำนวนเต็มที่ไม่เป็นลบ k สมการจะเป็น b =a + k*c ต้องเป็นไปตามนั้น ดังนั้น (b-a)/c จะเป็นจำนวนเต็มที่ไม่ติดลบ
ตัวอย่าง
#include<iostream> using namespace std; void isBInSequence(int a, int b, int c){ if (a == b) cout << "Yes"; if ((b - a) * c > 0 && (b - a) % c == 0) cout << "Yes"; else cout << "No"; } int main() { int a = 1, b = 7, c = 3; cout << "The answer is: "; isBInSequence(a, b, c); }
ผลลัพธ์
The answer is: Yes