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

โปรแกรม C++ หาตัวเลขน้อยที่สุด 3 อันดับในอาร์เรย์

สมมติเรามีอาร์เรย์ n สมาชิก เราต้องหาตัวเลขน้อยที่สุดอันดับ 1, 2 และ 3 ในอาร์เรย์ ตัวน้อยที่สุดอันดับ 1 คือค่าต่ำสุดของอาร์เรย์ ตัวน้อยที่สุดอันดับ 2 คือค่าต่ำสุดแต่ใหญ่กว่าอันดับ 1 และตัวน้อยที่สุดอันดับ 3 คือค่าต่ำสุดแต่ใหญ่กว่าอันดับ 2

สแกนผ่านแต่ละสมาชิก ตรวจสอบสมาชิก และเชื่อมโยงเงื่อนไขสำหรับตัวน้อยที่สุดอันดับ 1, 2 และ 3 เพื่อแก้ปัญหานี้

ตัวอย่าง

#include <iostream> 
using namespace std; 

int getThreeMins(int arr[], int n) { 
    int first = INT_MAX, sec = INT_MAX, third = INT_MAX; 
    for (int i = 0; i < n; i++) { 
        if (arr[i] < first) { 
            third = sec; 
            sec = first; 
            first = arr[i]; 
        } else if (arr[i] < sec) { 
            third = sec; 
            sec = arr[i]; 
        } else if (arr[i] < third) 
            third = arr[i]; 
    } 
    cout << "First min = " << first << endl; 
    cout << "Second min = " << sec << endl; 
    cout << "Third min = " << third << endl; 
} 

int main() { 
    int array[] = {4, 9, 18, 32, 12}; 
    int n = sizeof(array) / sizeof(array[0]); 
    getThreeMins(array, n); 
}

ผลลัพธ์

First min = 4 Second min = 9 Third min = 12