题目
题目描述与运行示例
**8.14(探讨矩阵)编写程序,提示用户输入一个方阵的长度,随机地在矩阵中填入0和1,打印这个矩阵,然后找出整行、整列或者对角线都是1或0的行、列和对角线
运行示例:
Enter the size for the matrix: 4
1100
0101
1011
1101
No same numbers on a row
No same numbers on a column
All 1s on the major diagonal
No same numbers on the sub-diagonal
破题
- 从控制台获取matrix大小(输出提示语句)
- 声明一个二维数组,长度为刚刚输入的大小
- 遍历数组给数组赋值(int)(Math.random()*2),同时输出元素,每行结尾换行(最后一行除外)
- 找整行为0、1的行下标,分情况输出
- 找整列为0、1的列下标,分情况输出
- 判断主对角线是否全部为0、1,分情况输出
- 判断副对角线是否全部为0、1,分情况输出
代码
import java.util.Scanner;
public class Test8_14 {
public static void main(String[] args) {
//1. 从控制台获取matrix大小(输出提示语句)
Scanner input = new Scanner(System.in);
System.out.print("Enter the size for the matrix: ");
int length = input.nextInt();
//2. 声明一个二维数组,长度为刚刚输入的大小
int[][] arr = new int[length][length];
//3. 遍历数组给数组赋值(int)(Math.random()*2),同时输出元素,每行结尾换行
for (int i = 0 ; i &