Hi, I am

Ngô Tôn

I am a programmer.

Home / Programming / C/C++ / Tách 1 mảng thành 2 mảng chẵn và lẻ

Tách 1 mảng thành 2 mảng chẵn và lẻ

Yêu cầu:

–  Viết chương trình tách 1 mảng các số nguyên thành 2 mảng B và C, sao cho mảng B chứa toàn số lẻ và mảng C chứa toàn số chẵn.

Ví dụ: Mảng ban đầu: 1 3 8 2 7 5 9 0 10
Mảng a: 1 3 7 5 9
Mảng b: 8 2 0 10

Thuật toán:

– Khai báo 2 mảng để chứa phần tử chẵn và lẻ.

– Duyệt mảng ban đầu để tách phần tử chẵn và lẻ vào 2 mảng tương ứng.

Code:

/************************************************************
#include "stdio.h"
#include "conio.h"
#define MAX_SIZE 100

void split_arr(int A[], int n, int B[], int* m, int C[], int *k);
void print_arr(int A[], int n, char name_arr);

void main()
{
int A[] = {1, -8, 2, 2, 3, 5, 23, 13, 44};
int n = sizeof(A)/sizeof(int);
int m = 0,k = 0;
int B[MAX_SIZE];
int C[MAX_SIZE];

split_arr(A, n, B, &m, C, &k);
print_arr(A, n, 'A');
print_arr(B, m, 'B');
print_arr(C, k, 'C');
getch();
}

void split_arr(int A[], int n, int B[], int* m, int C[], int *k)
{
int i, j;
for(i = 0; i < n; i++)
{
if(A[i]%2 != 0) // odd number
{
B[(*m)++] = A[i];
}
else //even number
{
C[(*k)++] = A[i];
}
}
}

void print_arr(int A[], int n, char name_arr)
{
int i;
if(n == 0)
{
printf("\nArray %c is empty", name_arr);
return;
}
for(i = 0; i < n; i++)
{
switch(name_arr)
{
case 'A':
case 'a':
printf("\nA[%d] = %d", i, A[i]);
break;
case 'B':
case 'b':
printf("\nB[%d] = %d", i, A[i]);
break;
case 'C':
case 'c':
printf("\nC[%d] = %d", i, A[i]);
}
}
}

Kết quả:

Yêu cầu: –  Viết chương trình tách 1 mảng các số nguyên thành 2 mảng B và C, sao cho mảng B chứa toàn số lẻ và mảng C chứa toàn số chẵn. Ví dụ: Mảng ban đầu: 1 3 8 2 7 5 9 0 10 Mảng a: 1 3 7 5 9 Mảng b: 8 2 0 10 Thuật toán: – Khai báo 2 mảng để chứa phần tử chẵn và lẻ. – Duyệt mảng ban đầu để tách phần tử chẵn và lẻ vào 2 mảng tương ứng. Code: Kết quả: [crayon-5f0ee05d8eb74781355874/]

User Rating: 5 ( 1 votes)

About ngoton

Ngô Tôn is a programmer with passion for tailored software solutions. Comes with 6+ years of IT experience, to execute beautiful front-end experiences with secure and robust back-end solutions.

Check Also

Xây dựng hàm bạn để tính diện tích hình chữ nhật

Yêu cầu: Xây dựng hàm bạn để tính diện tích hình chữ nhật Code: Giải …

One comment

  1. Phạm Lâm Trí Thành

    1. Hàm tách mảng thành ba mảng : một mảng chứa toàn số chẵn, một mảng chứa toán số lẻ, một mảng chứa toàn số 0.
    2. Tách mảng thành ba mảng Một mảng chứa các số hoàn thiện, một mảng chứa các số đối xứng và một mảng chứa các số không phải các số trên.
    3. Tách mảng thành ba mảng: Một mảng chứa các số âm, một mảng chứa các số dương và một mảng chứa các số không.

    anh cho em xin công thức tách 1 mảng thành 3 mảng đc k?

Leave a Reply

Your email address will not be published. Required fields are marked *