99乗算テーブルを2 D配列で保存し、配列に存在するかどうかを調べる数を入力します.

1461 ワード

package ls1501; import java.util.Scanner; public class Demo{final static int LEN=9;public static void main(String[]args){int arr[]=new int[LEN][LEN];//9行9列2次元配列を定義する;
    fillArr(arr);//  fillArr  ,  99   

    for(int i = 0 ; i < LEN ; i ++) {//  9 
        for(int j = 0; j <= i; j ++ ) {//  j <= i 
            System.out.print(arr[i][j] + " ");//  a[i][j]
        }
        System.out.println();//        
    }

    Scanner input = new Scanner(System.in); //         
    System.out.print("         :");
    int num = input.nextInt();//        
    if(findNum(arr,num)) {//  findNum            ,true   ,false    
        System.out.println("       !!!");
    }
    else {
        System.out.println("        !!!");
    }



}

static void fillArr(int arr[][]) {
    for(int i = 0 ; i < LEN ; i ++) {
        for(int j = 0 ;j < LEN ;j ++)
            if(j <= i) {
                arr[i][j] = (i + 1)*(j + 1);// 99            
            }
    }
}

static boolean findNum(int arr[][],int num) {
    boolean     flag = false;
    for(int i = 0; i < LEN ; i ++) {
        for(int j = 0; j < LEN ; j ++) {
            if(arr[i][j] == num) {//      ,  arr[i][j]   num  
                flag = true;//    ,  
                break;//    
            }
            else {
                flag = false;//    ,  
            }
        }
    }
    return flag;//  findNum   
}

}