Rumah  >  Artikel  >  Java  >  Java menggunakan tatasusunan dua dimensi untuk mencetak segitiga Yang Hui 10 baris

Java menggunakan tatasusunan dua dimensi untuk mencetak segitiga Yang Hui 10 baris

王林
王林ke hadapan
2023-04-19 22:40:051508semak imbas

Jumlah elemen dalam tatasusunan

public class T02 {
    public static void main(String[] args) {
        int[][]arr=new int[][]{{1,2,3,4,5},{1,2,3,5},{8,9,7}};
        int sum=0;
        for(int i=0;i< arr.length;i++){
            for(int j=0;j<arr[i].length;j++){
               sum=arr[i][j]+sum;
            }
        }
        System.out.println("sum="+sum);
    }
}
//和为50

Gunakan tatasusunan dua dimensi untuk mencetak segitiga Yang Hui 10 baris

public class T02 {
    public static void main(String[] args) {
        //声明并且初始化数组
        int[][]arr=new int[10][];
        //给数组的元素赋值
        for(int i=0;i< arr.length;i++){
            arr[i]=new int[i+1];
            arr[i][0]=arr[i][i]=1;
            if(i>1){
                for(int k=1;k<arr[i].length-1;k++){
                    arr[i][k]=arr[i-1][k-1]+arr[i-1][k];
                }
            }
        }
        //遍历数组
        for(int i=0;i< arr.length;i++){
            for(int j=0;j<arr[i].length;j++){
                System.out.print(arr[i][j]+"\t");
            }
            System.out.println();
        }
    }
}

Cari nilai maksimum dan minimum ​​daripada elemen dalam tatasusunan angka , purata, jumlah, dsb.

public class T03 {
    public static void main(String[] args) {
        int[] arr=new int[10];
        for(int i=0;i< arr.length;i++){
            arr[i]=(int)Math.random()*((99-10+1)+10);
            //[a,b]中的随机数的公式:Math.readom()*((b-a+1)+a).
            //注意这里出来的为double类型。
        }
        //求最大值
        int maximum=0;
        for(int i=0;i< arr.length;i++){
            if(maximum<arr[i]){
                maximum=arr[i];
            }
        }
        System.out.println("最大值为:"+maximum);
        //求最小值
        int minimum=arr[0];
        for(int i=1;i< arr.length;i++){
            if(minimum>arr[i]){
                minimum=arr[i];
            }
        }
        System.out.println("最大值为:"+minimum);
        //求和
        int sum=0;
        for(int i=1;i< arr.length;i++){
            sum=sum+arr[i];
        }
        System.out.println("sum:"+sum);
        //求平均数
        System.out.println("平均数为:"+sum/ arr.length);
    }
}

* Gunakan tatasusunan ringkas

(1) untuk mencipta kelas bernama T04 dan isytiharkan dua tatasusunan pembolehubah1 dan array2 dalam kaedah main()

Ia adalah tatasusunan jenis int[].

(2) Gunakan kurungan kerinting {} untuk memulakan tatasusunan1 hingga 8 nombor perdana: 2, 3, 5, 7, 11, 13, 17, 19.

(3) Paparkan kandungan tatasusunan1.

(4) Tetapkan pembolehubah tatasusunan2 bersamaan dengan tatasusunan1, ubah suai elemen indeks genap dalam tatasusunan2 untuk menjadikannya sama dengan nilai indeks (seperti tatasusunan[0]=0, tatasusunan[2]=2). Cetak tatasusunan1. **Berfikir: Apakah hubungan antara tatasusunan1 dan tatasusunan2?
Sambungan: Ubah suai soalan untuk merealisasikan penyalinan tatasusunan1 oleh tatasusunan2

public class T04 {
    public static void main(String[] args) {
        int[] array1,array2;
        array1=new int[]{2,3,5,7,11,13,17,19};
        for(int i=0;i< array1.length;i++){
            System.out.print(array1[i]+"\t");
        }     //赋值array1变量等于array2     //不能称作数组的复制
        array2=array1;
        for(int i=0;i< array1.length;i++){
            if(i%2==0){
                array2[i]=i;
            }
        }
        System.out.println();
        System.out.println("******************************************");
        for(int i=0;i< array1.length;i++){
            System.out.print(array1[i]+"\t");
        }
    }
}

Java menggunakan tatasusunan dua dimensi untuk mencetak segitiga Yang Hui 10 baris

(1 ) tatasusunan1 dan tatasusunan2 Nilai alamat adalah sama, dan semuanya menunjuk kepada satu-satunya entiti tatasusunan dalam ruang timbunan

(2)

 for(int i=0;i< array1.length;i++){
            array2[i]=array1[i];
        }

Java menggunakan tatasusunan dua dimensi untuk mencetak segitiga Yang Hui 10 baris

Kaedah 2

int i=0;
        int j=0;
        for(i=0,j= arr.length-1;i<j;i++,j--){
            int a=arr[i];
            arr[i]=arr[j];
            arr[j]=a;
        }

Carian linear

public class T05 {
    public static void main(String[] args) {
        int[]arr=new int[]{1,2,3,4,5,6,7,8,9};
        for(int i=0;i< arr.length;i++){
            System.out.print(arr[i]+"\t");
        }
        System.out.println();
        for(int i=0;i< arr.length;i++){
            if(i< arr.length-1-i){
                int a=arr[i];
                arr[i]=arr[arr.length-1-i];
                arr[arr.length-1-i]=a;
            }
        }
        for(int i=0;i< arr.length;i++){
            System.out.print(arr[i]+"\t");
        }
    }
}

Java menggunakan tatasusunan dua dimensi untuk mencetak segitiga Yang Hui 10 baris

Java menggunakan tatasusunan dua dimensi untuk mencetak segitiga Yang Hui 10 baris

Carian biometrik

//Premis mestilah teratur Seterusnya

contoh: Mula-mula lihat

import java.util.Scanner;

public class T07 {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        int a= s.nextInt();
        int[]arr=new int[]{1,2,3,4,6,7,8,9,10};
        int left=0;
        int right= arr.length-1;
        boolean is=true;
        while(left<=right){
            int average=(int)(left+right)/2;
            if(arr[average]>a){
                right=average-1;
            } else if(a==arr[average]){
                System.out.println("找到了,下标是:"+average);
                is=false;
            } else {
                left = average + 1;
//            }if(left==right){
//                System.out.println("没有找到");
//                is=false;
            }
        }
        if(is){
            System.out.println("很遗憾没有找到");
        }
    }
}

isihan gelembung dari kecil ke besar

public class T08 {
    public static void main(String[] args) {
        int[]arr=new int[]{33,55,2,6,-8,-5,66,1,63};
        for(int i=0;i< arr.length-1;i++){
            for(int j=0;j< arr.length-1-i;j++){
                if(arr[j]>arr[j+1]){
                    int a=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=a;
                }
            }
        }
        for(int i=0;i< arr.length;i++) {
                System.out.println(arr[i]);
        }
    }
}

Java menggunakan tatasusunan dua dimensi untuk mencetak segitiga Yang Hui 10 baris

Cari 3* 3 Jumlah unsur pepenjuru matriks

Ini ialah soalan pelaksanaan pengaturcaraan matriks. Matriks di Jawa biasanya dilaksanakan melalui tatasusunan dua dimensi.

Kod khusus adalah seperti berikut:

import java.util.Random;

/**
 * 求一个3*3矩阵对角线元素之和
 *
 * @author ChenZX
 *
 */
public class Test04 {

    public static void main(String[] args) {
        int sum = 0; //和
        int[][] arr = new int[3][3];
        Random r = new Random();
        for(int i=0;i<3;i++){    //随机生成矩阵
            for(int j=0;j<3;j++){
                arr[i][j] = r.nextInt(10);  //0到9
            }
        }
        for(int i=0;i<3;i++){      //遍历矩阵
            for(int j=0;j<3;j++){
                System.out.print(arr[i][j]+" ");   //打印矩阵元素
                if(i==j){   //如果为对角线元素
                    sum += arr[i][j];  //求和
                }
            }
            System.out.println(); //每输出3个元素换行
        }
        System.out.println("此矩阵对角线的和为:"+sum);
    }
}

Atas ialah kandungan terperinci Java menggunakan tatasusunan dua dimensi untuk mencetak segitiga Yang Hui 10 baris. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam