Tách mảng chẵn lẻ trong C++ | Laptrinhcanban.com

Tách mảng chẵn lẻ trong C++

Hướng dẫn cách tách mảng chẵn lẻ trong C++. Bạn sẽ học được cách viết một chương trình C++ cơ bản để tách 1 mảng thành 2 mảng chẵn và lẻ trong C++ sau bài học này.

Tách mảng chẵn lẻ trong C++

Để tách 1 mảng thành 2 mảng chẵn và lẻ trong C++, chúng ta đơn giản chuẩn bị sẵn 2 mảng chứa kết quả phép tách, một mảng để chứa các số chẵn và một mảng để chứa các số lẻ được tách ra từ mảng ban đầu.

Để kiểm tra một số trong mảng là số chẵn hay số lẻ, chúng ta sẽ sử dụng tới một trong hai hàm mà Kiyoshi đã giới thiệu trong bài dưới đây:

Và chúng ta viết chương trình tách 1 mảng thành 2 mảng chẵn và lẻ trong C++ như sau:

#include <iostream>
using namespace std;

/*Tạo macro SIZE_OF_ARRAY để lấy độ dài (số phần tử) của mảng chỉ định*/
#define SIZE_OF_ARRAY(array) (sizeof(array)/sizeof(array[0]))

/*Tạo hàm in phần tử trong mảng*/
void show_array(int array[], int length){
for(short i = 0; i < length; i++) cout << array[i] <<' ';
cout << endl;
}

/*Tạo hàm kiểm tra số chẵn lẻ trong C++*/
int check_odd_even(int n){
//flag = 1 => số lẻ
//flag = 0 => số chẵn

int flag = 1;
if( n % 2 == 0 ) flag= 0;
return flag;
}

int main(){
//Khai báo 2 mảng chứa kết quả
int odd_array[100], even_array[100];

//Khởi tạo mảng cần tách ra các số chẵn lẻ
int array[] = {-2,-1,0,1,2,3,4,5,6,7,8};

//Sử dụng macro ở trên để lấy độ dài mảng
int length = SIZE_OF_ARRAY(array);

int odd_count = 0, even_count = 0;

for (int i = 0; i < length; i++){
//Kiểm tra phần tử là số chẵn hay lẻ
//Và gán số tìm thấy vào các mảng chẵn lẻ tương ứng
//Cũng như tăng dần số phần tử trong mảng kết quả
if (check_odd_even(array[i]) == 1) {
odd_array[odd_count]=array[i];
++ odd_count;
} else {
even_array[even_count]=array[i];
++ even_count;
}
}

//In ra mảng chẵn lẻ đã tách ra
show_array(odd_array, odd_count);
show_array(even_array, even_count);

return 0;
}

Kết quả của phép tách mảng chẵn lẻ trong C++ như sau:

-1 1 3 5 7 
-2 0 2 4 6 8

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn cách tách mảng chẵn lẻ trong C++ rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về C++ trong các bài học tiếp theo.

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.