实现输入整数生成对应规格星号网格图案的Java代码调整
解决方案
你只需调整现有代码的两个输出字符即可实现需求:
- 分隔行逻辑(
a % (input - 1) == 0分支):把原输出的--替换为*,匹配星号分隔线的格式 - 非分隔行逻辑:把原输出的竖线
|替换为*,匹配星号网格的节点格式
修改后的完整代码如下:
int input, numberOfLines, emptySpaceCount; input = 4; numberOfLines = input * (input - 1) + 1; emptySpaceCount = 2 * input - 3; if (input < 1) { System.out.println("Invalid input!"); } else if (input == 1) { System.out.println("*"); } else { for (int a = 0; a < numberOfLines; a++) { if (a % (input - 1) == 0) { for (int b = 0; b < numberOfLines; b++) { System.out.print("* "); } } else { for (int i = 0; i < input; i++) { System.out.print("*"); for (int j = 0; j < emptySpaceCount; j++) { System.out.print(" "); } } System.out.print("*"); } System.out.println(); } }
修改后输出完全匹配你给出的示例要求:输入1输出单个*,输入2输出3行* * * ,输入3、4的网格效果也和示例完全一致。
内容的提问来源于stack exchange,提问作者mj balcueva
相关产品推荐
相关产品推荐

