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

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

王林
Lepaskan: 2023-04-19 22:40:05
ke hadapan
1526 orang telah melayarinya

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
Salin selepas log masuk

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();
        }
    }
}
Salin selepas log masuk

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);
    }
}
Salin selepas log masuk

* 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");
        }
    }
}
Salin selepas log masuk

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];
        }
Salin selepas log masuk

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;
        }
Salin selepas log masuk

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");
        }
    }
}
Salin selepas log masuk

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("很遗憾没有找到");
        }
    }
}
Salin selepas log masuk

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]);
        }
    }
}
Salin selepas log masuk

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);
    }
}
Salin selepas log masuk

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!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan