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

ค้นหาว่าตัวเลขทุกตัวในรายการ C++ . หารลงตัวหรือไม่


ในปัญหานี้ เราได้รับรายการตัวเลข n และตัวเลข งานของเราคือ ค้นหาว่าตัวเลขทุกตัวในรายการนั้นหารลงตัวหรือไม่

เราจำเป็นต้องตรวจสอบว่าตัวเลขที่กำหนดแบ่งองค์ประกอบทั้งหมดของรายการหรือไม่

มาดูตัวอย่างเพื่อทำความเข้าใจปัญหากัน

ป้อนข้อมูล: รายการ[] =[4, 10 ,6, 5, 9] num =5

ผลลัพธ์: ไม่

คำอธิบาย:

องค์ประกอบ 4, 6, 9 หารด้วย 5 ไม่ลงตัว

แนวทางแก้ไข:

ในการแก้ปัญหา เราต้องตรวจสอบว่าองค์ประกอบใดในรายการหารด้วย num ลงตัวหรือไม่ หากทุกจำนวนรายการหารด้วย num ลงตัว ให้คืนค่า true มิฉะนั้นจะคืนค่าเท็จ

อัลกอริทึม:

ขั้นตอนที่ 1: วนรอบสำหรับ i -> 0 ถึง n, n คือความยาวของรายการ

ขั้นตอนที่ 1.1: ถ้า list[i] % num !=0, return -1.
ขั้นตอนที่ 1.2: อย่างอื่น list[i] % num ==0 ดำเนินการต่อ

ขั้นตอนที่ 2: กลับ 1.

โปรแกรมเพื่อแสดงการทำงานของโซลูชันของเรา

ตัวอย่าง

#include <iostream>
using namespace std;

bool isListDivNum(int list[], int num, int size)
{
   for (int i = 0; i < size; i++) {
      if (list[i] % num != 0)
         return false;
   }
   return true;
}

int main() {
   
   int list[] = {762, 9, 123, 99};
   int num = 3;
   int size = (sizeof(list) / sizeof(list[0]));
   if (isListDivNum(list, num , size))
      cout<<"All elements of the list are divisible by number";
   else
      cout<<"All elements of the list are not divisible by number";

   return 0;
}

ผลลัพธ์ -

All elements of the list are divisible by number