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

หาจำนวนคี่ลำดับที่ k ในอาร์เรย์ใน C++

ในบทช่วยสอนนี้ เราจะเขียนโปรแกรมเพื่อหาจำนวนคี่ลำดับที่ k จากอาร์เรย์ที่กำหนด

ขั้นตอนการแก้ปัญหา

  • กำหนดค่าเริ่มต้นของอาร์เรย์และ k
  • วนลูปผ่านอาร์เรย์
    • ถ้าองค์ประกอบปัจจุบันเป็นเลขคี่ ให้ลดค่า k ลง
    • ถ้า k เท่ากับ 0 ให้คืนค่าองค์ประกอบปัจจุบัน
  • คืนค่า -1

ตัวอย่างโค้ด

#include <bits/stdc++.h> 
using namespace std; 

int findKthOddNumber(int arr[], int n, int k) { 
    for (int i = 0; i <= n; i++) { 
        if (arr[i] % 2 == 1) { 
            k--; 
        } 
        if (k == 0) { 
            return arr[i]; 
        } 
    } 
    return -1; 
} 

int main() { 
    int arr[] = { 4, 5, 22, 1, 55 }, k = 3; 
    cout << findKthOddNumber(arr, 5, k) << endl; 
    return 0; 
}

ผลลัพธ์

หากรันโค้ดด้านบน จะได้ผลลัพธ์ดังนี้:

55

สรุป

หากมีข้อสงสัยเกี่ยวกับบทช่วยสอนนี้ สามารถถามได้ในส่วนความคิดเห็น