首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >创建一个内部带有X的星号框

创建一个内部带有X的星号框
EN

Stack Overflow用户
提问于 2019-10-08 21:29:13
回答 3查看 235关注 0票数 0

我应该创建一个星号框,里面有一个X,输入指定的行数。如果size =7,则输出示例:

代码语言:javascript
复制
*******
**   **
* * * *
*  *  *
* * * *
**   **
*******

到目前为止,我已经找到了如何创建一个空的中空盒子。

代码语言:javascript
复制
// n is size of box, r = rows, c = columns
for (int r = 1; r <= n; r++) {
    for (int c = 1; c <= n; c++) {
        if (r == 1 || r == n || c == 1 || c == n) {
            System.out.print("*");
        } else {
            System.out.print(" ");
            System.out.println();
        }
    }
}

除此之外,我不确定如何获得正确的间距和星号位置,以将X放置在框内。任何帮助都将不胜感激。:)

EN

回答 3

Stack Overflow用户

发布于 2019-10-08 21:32:54

从数学的角度来考虑。

X是对角线,也是反对角线。

所以,任何时候X等于Y,添加一个高度,只要X等于- Y,添加星号。

这只适用于正方形的盒子。

希望这能有所帮助!

票数 2
EN

Stack Overflow用户

发布于 2019-10-08 21:49:16

下面是如何创建X的想法

代码语言:javascript
复制
int n = 7;
for (int r = 1; r <= n; r++){

    for (int c = 1; c <= n; c++){

        //r == c - main diagonal
        //c == n-r+1 - second diagonal
        //add 1 because count start from 1
        //example: r = n -> n-r = 0 -> c never has value 0
        if((r == c) || (c == n-r+1)){ 
            System.out.print("*");
        }else{
            System.out.print(" ");
        }

    }

    System.out.println();

}

你可以在你的ifelse之间插入这个。另外,我推荐使用{},如果代码正常工作也没关系。这将使您的代码更容易阅读。

票数 2
EN

Stack Overflow用户

发布于 2019-10-08 22:39:22

@ZektorH在代码中说:

代码语言:javascript
复制
  int sizeOfBox = 11;
  int row = 1;
  for (; row <= sizeOfBox; row++) {
     if (row != 1) {
        System.out.println();
     }
     for (int column = 1; column <= sizeOfBox; column++) {
        if (column == 1 || column == sizeOfBox || row == 1 || row == sizeOfBox) {
           System.out.print("*");
        } else {
           if (column == row || column == (sizeOfBox-row+1)) {
              System.out.print("*");
           } else
              System.out.print(" ");
        }

     }
  }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58287382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档