bài 2.3

3. Viết chương trình nhập vào 1 ma trận vuông kích thức n (2<=n<=50).

a. Tạo ra 1 tiến trình tìm phần tử lớn nhất và nhỏ nhất trong ma trận

b. Tạo ra 1 tiến trình tìm số nguyên tố nhỏ nhất và lớn nhất trong ma trận

c. Tạo ra 1 tiến trình tìm tổng các số lẻ và tổng các số chẵn trong ma trận

d. Tạo ra một tiến trình tìm max các cột và lưu vào 1 mảng 1  chiều kích thước n.

e. Tạo ra 1 tiến trình tìm min các hàng và lưu vào 1 mảng 1  chiều kích thước n.

f. Tạo ra 1 tiến trình tính tổng các phần tử trên dường chéo chính và tổng các phần tử trên đường chéo phụ.

code

package Dang2;

import java.io.*;

public class Bai3 {

    static int n = 0;

    static int a[][] = new int[100][100];

    static int nhapn() {

        int n = 0;

        try {

            DataInputStream nhap = new DataInputStream(System.in);

            n = Integer.valueOf(nhap.readLine());

        } catch (Exception e) {

            n = 0;}

        return n;}

    public static void main(String[] args) {

        do {

            System.out.print("Nhap kich thuoc ma tran: ");

            n = nhapn();

        } while (n < 2 || n > 50);

        System.out.println("Nhap cac phan tu cua ma tran");

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

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

                System.out.print("a[" + i + "][" + j + "]= ");

                a[i][j] = nhapn();}}

        System.out.println("Ma tran vua nhap: ");

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

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

                System.out.print(a[i][j] + " ");}

                System.out.println("");}

// a. Tìm số lớn nhất, nhỏ nhất trong mảng:

        System.out.println("a. ------------------------------");

        int max = a[0][0], min = a[0][0];

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

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

                if (max < a[i][j]) {

                    max = a[i][j];}

                if (min > a[0][0]) {

                    min = a[0][0];}}}

        System.out.println("So lon nhat trong mang:" + max);

        System.out.println("So nho nhat trong mang:" + min);

// b. Tìm số nguyên tố lớn nhất, nhỏ nhất.

        System.out.println("b.----------------------------------");

        int nt[] = new int[n];

        int dem = 0;

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

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

                if (a[i][j] != 0 && a[i][j] != 1) {

                    for (int l = 2; l < a[i][j]; l++) {

                        if (a[i][j] % l == 0) {

                            dem++;}}

                    if (dem == 0) {

                        nt[i] = a[i][j];

                    } else {

                        dem = 0;}}}}

                        int ntMax = nt[0], ntMin = nt[0];

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

            if (ntMax < nt[l]) {

                ntMax = nt[l];}

            if (ntMin > nt[l]) {

                ntMin = nt[l];}}

        System.out.println("So nguyen to lon nhat: " + ntMax);

        System.out.println("So nguyen to nho nhat: " + ntMin);

// c. Tổng cả số lẻ và số chẵn trong ma trận:

        System.out.println("c. -----------------------------------");

        int tongChan = 0, tongLe = 0;

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

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

                if (a[i][j] % 2 == 0) {

                    tongChan += a[i][j];

                } else {

                    tongLe += a[i][j];}}}

        System.out.println("Tong cac so chan: " + tongChan);

        System.out.println("Tong cac so le: " + tongLe);

 

// d. Tìm Max các cột:

        System.out.println("d. -----------------------------------");

        int maxCot[] = new int[n];

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

            maxCot[i] = a[0][i]; // Gan bang phan tu dau tien cua cot

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

                if (maxCot[i] < a[j][i]) {

                    maxCot[i] = a[j][i];}}}

        System.out.println("Max cot:");

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

            System.out.print(maxCot[i] + " ");}

        System.out.println("");

// e. Min các hàng:

        System.out.println("e. -------------------------------------");

        int minHang[] = new int[n];

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

            minHang[i] = a[i][0]; // Gang bang phan tu dau tien cua hang

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

                if (minHang[i] > a[i][j]) {

                    minHang[i] = a[i][j];}}}

        System.out.println("Min hang:");

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

            System.out.println(minHang[i]);}

// f. Tổng trên đường chéo chính và chéo phụ:.

        System.out.println("f. --------------------------------");

        int cheoChinh = 0, cheoPhu = 0;

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

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

                if (i == j) {

                    cheoChinh = cheoChinh + a[j][j];}

                if (i == (n - 1 - j)) {

                    cheoPhu = cheoPhu + a[i][j];}}}

        System.out.println("Tổng các phần tử trên đường chéo chính: " + cheoChinh);

        System.out.println("Tổng các phần trử trên đường chéo phụ: " + cheoPhu);}}

Bạn đang đọc truyện trên: TruyenTop.Vip

Tags: