Home > Java > Java core > 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.

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:

ketqua baitap7mang1chieu PNG

Nguồn: freetuts.net

Tham khảo
Java - Nhập mảng và thực hiện các thao tác trên mảng.
Java - Sắp xếp mảng tăng dần sử dụng phương pháp nổi bọt (Bubble sort).
Java - Tìm kiếm một phần tử sử dụng trong mảng sử dụng thuật tìm kiếm nhị phân.
Java - Kiểm tra mảng một chiều vừa nhập có phải là mảng đối xứng hay không?
Java - Tìm và in ra màn hình số lượng số nguyên lẻ, số lượng số nguyên chẵn trong mảng.
Java - Xóa phần tử có giá trị k trong mảng (k nhập từ bàn phím).
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.
Java - Tách một nửa đầu của mảng ban đầu sang mảng thứ nhất và nửa còn lại sang mảng thứ hai.
Java - Viết chương trình hiển thị các phần tử chia hết cho 5 trong mảng.
Java - Đếm số lần xuất hiện của 1 phần tử được nhập từ bàn phím.
Java - Bài tập tổng hợp các thao tác trên mảng.
Java - Viết chương trình nhập mảng sao cho không có phần tử nào trùng nhau.

BÀI VIẾT

notice png LIST home png HOME hot gif BÁO
LỖI
top png TOP