找出給定數字是否出現在 C++ 的無窮數列中
假設我們有三個整數 a、b 和 c。假設一個無窮數列中,a 是第 1 項,c 是公差。我們必須檢查 b 是否存在於該數列中。假設 a = 1、b = 7、c = 3,那麼序列將為 1、4、7、10,…,因此 7 存在於序列中,因此輸出將為“是”。
要解決這個問題,我們必須遵循以下兩個步驟 -
當 c = 0 且 a = b 時,列印“是”,如果 a 不等於 b,則返回“否”
當 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
廣告