logo

Bài tập về mảng trong java

Đáp án và lời giải chính xác cho Bài tập về mảng trong java” cùng với kiến thức mở rộng về về mảng Java là những tài liệu học tập vô cùng bổ ích dành cho thầy cô và bạn học sinh.

Bài tập về mảng trong java

Viết chương trình nhập vào một mảng số nguyên có n phần tử và thực hiện các công việc sau:

+ Xuất giá trị các phần tử của mảng.

+ Tìm phần tử có giá trị lớn nhất, nhỏ nhất.

+ Đếm số phần tử là số chẵn.

+ Sắp xếp mảng tăng dần.

Hướng dẫn

- Xuất các giá trị của mảng: Các bạn có thể dùng một vòng for() để duyệt qua tất cả các phần tử của mảng và in chúng ra.

- Tìm min: Các bạn có thể dùng một biến min và gán giá trị min = a[0] . Sau đó các bạn dùng vòng for() để duyệt qua tất cả các phần tử của mảng. Nếu có một phần tử thứ i bé hơn giá trị min thì chúng ta gán min = a[i] và cứ tiếp tục duyệt như vậy đến hết mảng. Tìm max cũng tương tự như vậy thôi !

- Tìm các số nguyên tố trong mảng: Đầu tiên các bạn tạo một hàm boolean check(int n) trả về true nếu n là số nguyên tố, trả về false nếu n không phải là số nguyên tố. Sau đó thực hiện duyệt qua tất cả mảng nếu là số nguyên tố thì ta in ra màn hình.

- Số nguyên tố là số chỉ chia hết cho 1 và chính nó. Với định nghĩa đó bạn có thể cho một vòng for() chạy từ 2 đến (n-1) chỉ cần n chia hết với bất kì số nào trong đoạn đó thì ta return false ngay. Nhưng trên thực tế các bạn chỉ cần chạy từ 2 đến sqrt( n ) mà thôi . Lưu ý số 1 không phải là số nguyên tố nhé !Với bài toán sắp xếp: Đầu tiên các bạn dùng một vòng for() chạy qua hết các phần tử của mảng. Nếu phần tử đứng sau bé hơn phần tử đứng trước thì ta thực hiện đổi vị trí giữa chúng. Như vậy sau một vòng for() chúng ta đã đưa số lớn nhất về cuối mảng ( các bạn có thể tự kiểm chứng bằng cách viết trên giấy nhé ! ). Để sắp xếp n số nguyên trong mảng thì ta cần lặp vòng for trên (n-1) lần. Vậy chúng ta sẽ cho hai vòng for() lồng nhau để thực hiện công việc trên.

 public static void main(String[] args) {

    int n;

    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];

    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();

    }

    // Xuất giá trị các phần tử của mảng

    System.out.println("\nMảng ban đầu: ");

    for (int i = 0; i < n; i++) {

        System.out.print(A[i] + "\t");

    } 

    // Tìm phần tử có giá trị lớn nhất, nhỏ nhất

    int max = A[0]; // khởi tạo phần tử lớn nhất là phần tử đầu tiên

    int min = A[0]; // khởi tạo phần tử bé nhất là phần tử đầu tiên

         

    for (int i = 0; i < n; i++) {

        if (A[i] < min) {

            min = A[i];

        }

             

        if (A[i] > max) {

            max = A[i];

        }

    }

    System.out.print("\nPhần tử lớn nhất trong mảng là "+ max);

    System.out.print("\nPhần tử nhỏ nhất trong mảng là "+ min);

    // Đếm số phần tử là số chẵn

    int soPhanTuChan = 0;

    for (int i = 0; i < n; i++) {

        if (A[i] % 2 == 0) {

            soPhanTuChan++;

        }

    }

    System.out.println("\nSố phần tử chẵn có trong mảng = "+ soPhanTuChan);

    // Sắp xếp măng tăng dần

    // Java cung cấp cho chúng ta một thư viện có sẵn

    // để sắp xếp mảng, đó là thư viện sort của lớp Arrays

    // mặc định thư viện này sẽ sắp xếp mảng tăng dần

    Arrays.sort(A);

    System.out.println("\nMảng sau khi sắp xếp: ");

    for (int i = 0; i < n; i++) {

        System.out.print(A[i] + "\t");

    }

}

icon-date
Xuất bản : 12/03/2022 - Cập nhật : 14/12/2022