Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

รหัส C ++ เพื่อค้นหาอาร์เรย์ที่เรียงลำดับด้วยเงื่อนไขที่ไม่สามารถแบ่งได้


สมมติว่าเรามีตัวเลข n พิจารณาว่าเรากำลังจะสร้างอาร์เรย์ A ที่มีองค์ประกอบ n ตัว A issorted in ascending order และองค์ประกอบทั้งหมดมีความแตกต่างกัน สำหรับทุก ๆ i ตั้งแต่ 2 ถึง n (ดัชนีอาร์เรย์พิจารณาเริ่มต้นจาก 1) A[i] ไม่สามารถหารด้วย A[i-1] ได้

ดังนั้น หากอินพุตเท่ากับ n =7 ผลลัพธ์จะเป็น [2, 3, 4, 5, 6, 7, 8]

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

for initialize i := 2, when i <= n + 1, update (increase i by 1), do: print i

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

#include <bits/stdc++.h>
using namespace std;
void solve(int n){
   for (int i = 2; i <= n + 1; i++){
      printf("%d, ", i);
   }
}
int main(){
   int n = 7;
   solve(n);
}

อินพุต

7

ผลลัพธ์

2, 3, 4, 5, 6, 7, 8