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

ค้นหาตัวเลขที่แบ่งองค์ประกอบอาร์เรย์สูงสุดใน C++


ในบทช่วยสอนนี้ เราจะค้นหาจำนวนที่แบ่งออกเป็นองค์ประกอบสูงสุดในอาร์เรย์ที่กำหนด

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

  • เริ่มต้นอาร์เรย์และตัวแปรเพื่อเก็บผลลัพธ์

  • วนซ้ำบนอาร์เรย์

    • เริ่มต้นตัวแปรตัวนับ

    • วนซ้ำอาร์เรย์อีกครั้ง

      • เพิ่มตัวนับถ้าองค์ประกอบปัจจุบันถูกหารด้วยองค์ประกอบอาร์เรย์

    • อัปเดตผลลัพธ์หากจำนวนปัจจุบันสูงสุด

  • พิมพ์ผลลัพธ์

ตัวอย่าง

มาดูโค้ดกันเลย

#include <bits/stdc++.h>
using namespace std;
int numberWithMaximumMultiples(int arr[], int n) {
   int result = -1;
   for (int i = 0; i < n; i++) {
      int count = 0;
      for (int j = 0; j < n; j++) {
         if (arr[i] % arr[j] == 0) {
            count++;
         }
      }
      if (count > result) {
         result = count;
      }
   }
   return result;
}
int main() {
   int arr[] = {4, 24, 16, 3, 12, 28};
   cout << numberWithMaximumMultiples(arr, 6) << endl;
   return 0;
}

ผลลัพธ์

หากคุณรันโค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

4

บทสรุป

หากคุณมีข้อสงสัยใดๆ ในบทแนะนำ โปรดระบุในส่วนความคิดเห็น