Java - Nhập mảng và thực hiện tách các số chẵn và lẻ trong mảng sang hai mảng khác.

Viết chương trình nhập vào một mảng số nguyên và sau đó tách các số chẵn và lẻ trong mảng đó sang hai mảng khác.

Bài giải

-------------------- ######## --------------------

Bài giải
public static void main(String[] args) {
	int n, c, d;
	Scanner scanner = new Scanner(System.in);
		
	do {
		System.out.println("Nhập vào số phần tử của mảng: ");
		n = scanner.nextInt();
	} while (n <= 0);
		
	int A[] = new int[n];
	int ch[] = new int[n];	// mảng chứa các phần tử là số chẵn
	int le[] = new int[n];	// mảng chứa các phần tử là số lẻ
		
	System.out.println("Nhập các phần tử cho mảng: ");
	for (int i = 0; i < n; i++) {
		System.out.print("Nhập phần tử thứ " + i + ": ");
		A[i] = scanner.nextInt();
	}
		
   	// c: số phần tử của mảng ch
	// d: số phần tử của mảng le.
	c = d = 0;
		
	for (int i = 0; i < n; i++) {
		// nếu phần tử tại vị trí i chia hết cho 2
		// thì gán phần tử đó cho phần tử tại vị trí c của mảng ch
		// ngược lại thì gán phần tử đó
		// cho phần tử tại vị trí d của mảng le
		if (A[i] % 2 == 0) {
			ch[c] = A[i];
			c++;
		} else {
			le[d] = A[i];
			d++;
		}
	}
		
	System.out.println("Các phần tử của mảng ch là: ");
	for (int i = 0; i < c; i++) {
		System.out.print(ch[i] + "\t");
	}
		
	System.out.println("\nCác phần tử của mảng le là: ");
	for (int i = 0; i < d; i++) {
		System.out.print(le[i] + "\t");
	}
}

Giải thích hoạt động của chương trình trên:

Mảng A[] sẽ được tách thành hai mảng: mảng ch[] (chứa các số chẵn) và mảng le[] (chứa các số lẻ) với số phần tử tương ứng lưu trong các biến c và d. Mỗi lần tìm được số phần tử chẵn hoặc lẻ tương ứng với từng mảng thì sẽ tăng số phần tử của mảng đó lên 1.

Kết quả sau khi biên dịch chương trình:

Trở thành Android Developer chuyên nghiệp với 30h học
Bạn muốn trở thành một nhà phát triển mobile app trên nền tảng Android? Vậy thì đây là khóa học rất phù hợp với bạn, chi phí rẻ, học online tại nhà.
XEM NGAY

Nguồn: freetuts.net