繁体   English   中英

Java中的多个重叠方块

[英]Multiple overlapping squares in Java

我们如何使用 Java 中的单一方法制作具有相同左上角的多个重叠正方形(不同长度)?

例如,如果 function 的 arguments 为 5、7,则 output 应如下所示:

#######
#   # #
#   # #
#   # #
##### #
#     #
#######

如果 arguments 为 2、4、6,则 output 应如下所示:

######
## # #
#  # #
#### #
#    #
######

我能够分别绘制单个正方形和多个正方形,但面临这个问题。

谢谢。

  1. 为最大的正方形创建一个二维 boolean 数组。
  2. 对于此数组中的每个方形标记,应填充的单元格。
  3. 打印二维数组。

对于 arguments 5 和 7,它将是这样的:

boolean[][] arr = new boolean[7][7];
for(int i = 0; i < 7; i++){
    for(int j = 0; j < 7; j++){
        if(i == 0 || j == 0 || i == 6 || j == 6){
            arr[i][j] = true;
        }
    }
}
for(int i = 0; i < 5; i++){
    for(int j = 0; j < 5; j++){
        if(i == 0 || j == 0 || i == 4 || j == 4){
            arr[i][j] = true;
        }
    }
}
for(int i = 0; i < 7; i++){
    for(int j = 0; j < 7; j++){
        if(arr[i][j]){
            System.out.print("#");
        }
        else{
            System.out.print(" ");
        }
    }
    System.out.println();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM