เราได้รับองค์ประกอบประเภทจำนวนเต็มสองอาร์เรย์ สมมติว่า arr_1[] และ arr_2[] และงานคือการเลือกองค์ประกอบหนึ่งจาก arr_1[] และองค์ประกอบอื่นจาก arr_[] เพื่อสร้างคู่ จากนั้นคำนวณผลรวมขององค์ประกอบใน จับคู่และตรวจสอบว่าผลรวมผลลัพธ์เป็นคู่หรือไม่
ป้อนข้อมูล
int arr_1[] = {2, 3, 7, 1, 4} int arr_2[] = { 2, 4, 1, 3}
ผลผลิต
Count Pairs from two arrays with even sum are: 10
คำอธิบาย
We will form the pairs using both the arrays and the pairs so formed are-: (2, 2) = 4(valid), (2, 4) = 6(valid), (2, 1) = 3(invalid), (2, 3) = 5(invalid), (3, 2) = 5(invalid), (3, 4) = 7(invalid), (3, 1) = 4(valid), (3, 3) = 5(valid), (7, 2) = 9(invalid), (7, 4) = 11(invalid), (7, 1) = 8(valid), (7, 3) = 10(valid), (1, 2) = 3(invalid), (1, 4) = 5(invalid), (1, 1) = 2(valid), (1, 3) = 4(valid), (4, 2) = 6(valid), (4, 4) = 8(valid), (4, 1) = 5(invalid), (4, 3) = 7(invalid). There are 10 valid pairs formed using given two arrays that are even sums.
ป้อนข้อมูล
int arr_1[] = {3, 1, 2} int arr_2[] = { 2, 4}
ผลผลิต
Count Pairs from two arrays with even sum are: 2
คำอธิบาย
We will form the pairs using both the arrays and the pairs so formed are-: (3, 2) = 5(invalid), (3, 4) = 7(invalid), (1, 2) = 3(invalid), (1, 4) = 5(invalid), (2, 2) = 4(valid), (2, 4) = 6(valid), . There are 2 valid pairs formed using given two arrays that are even sums.
แนวทางที่ใช้ในโปรแกรมด้านล่างมีดังนี้
-
ป้อนสองอาร์เรย์ขององค์ประกอบประเภทจำนวนเต็มและคำนวณขนาดของอาร์เรย์ทั้งสองและส่งผ่านข้อมูลไปยังฟังก์ชันเพื่อการประมวลผลต่อไป
-
ใช้ตัวแปรชั่วคราวเป็นตัวนับเพื่อเก็บการนับคู่ด้วยผลรวมคู่
-
เริ่มวนรอบ FOR จาก i ถึง 0 จนถึงขนาดอาร์เรย์ 1
-
ภายในลูป เริ่มลูปอื่น FOR จาก j ถึง 0 จนถึงขนาดอาร์เรย์ 2
-
ตอนนี้เก็บผลรวมของ arr_1[i] และ arr_2[j] ไว้ในตัวแปรจำนวนเต็ม สมมติว่าผลรวม
-
ตรวจสอบ IF sum % 2 ==0 เช่น ผลรวมเป็นคู่หรือไม่ ถ้าใช่ ให้เพิ่มจำนวนขึ้น 1
-
คืนจำนวน
-
พิมพ์ผลลัพธ์
ป้อนสองอาร์เรย์ขององค์ประกอบประเภทจำนวนเต็มและคำนวณขนาดของอาร์เรย์ทั้งสองและส่งผ่านข้อมูลไปยังฟังก์ชันเพื่อการประมวลผลต่อไป
ใช้ตัวแปรชั่วคราวเป็นตัวนับเพื่อเก็บการนับคู่ด้วยผลรวมคู่
เริ่มวนรอบ FOR จาก i ถึง 0 จนถึงขนาดอาร์เรย์ 1
ภายในลูป เริ่มลูปอื่น FOR จาก j ถึง 0 จนถึงขนาดอาร์เรย์ 2
ตอนนี้เก็บผลรวมของ arr_1[i] และ arr_2[j] ไว้ในตัวแปรจำนวนเต็ม สมมติว่าผลรวม
ตรวจสอบ IF sum % 2 ==0 เช่น ผลรวมเป็นคู่หรือไม่ ถ้าใช่ ให้เพิ่มจำนวนขึ้น 1
คืนจำนวน
พิมพ์ผลลัพธ์
ตัวอย่าง
#include <iostream> using namespace std; int even_pair(int arr_1[], int size_arr1, int arr_2[], int size_arr2){ int count = 0; int odd = 0; for(int i = 0 ;i <size_arr1 ; i++){ for(int j = 0; j<size_arr2 ; j++){ int even = arr_1[i] + arr_2[j]; if(even % 2 == 0){ count++; } } } return count; } int main(){ int arr_1[] = {2, 3, 7, 1, 4}; int arr_2[] = { 2, 4, 1, 3}; int size_arr1 = sizeof(arr_1) / sizeof(arr_1[0]); int size_arr2 = sizeof(arr_2) / sizeof(arr_2[0]); cout<<"Count Pairs from two arrays with even sum are: "<<even_pair(arr_1, size_arr1, arr_2, size_arr2); return 0; }
ผลลัพธ์
หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -
Count Pairs from two arrays with even sum are: 10