java - Java - 打印 X^X^X 方块
问题描述
我有一个任务要做,我的任务是打印 X 个 X^X 的正方形。例如,输入“3”的正确输出如下图
我的代码:
Scanner s = new Scanner (System.in);
int base, k=0;
System.out.println("Enter a number do draw some squares");
base = s.nextInt();
int bb = base*base;
for (int t=0; t<=bb; t++) {
if (t<bb) {
for (int i=0; i<base; i++) {
for (k=0; k<=base; k++) {
if (k<base)
System.out.print("*");
else
System.out.print(" ");
}
}
}
System.out.println();
}
当尝试使用 '2' 作为基础时,输出为:
** **
** **
** **
** **
如何在每 2 行之间留出空格?
真挚地,
解决方案
当循环计数器可被基数整除时,您需要更改输出,即 when the_loop_counter % base = 0
。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print("Enter a number do draw some squares: ");
int base = s.nextInt();
int bb = base * base;
for (int i = 1; i <= bb; i++) {
for (int j = 1; j <= bb; j++) {
System.out.print(j % base == 0 ? "* " : "*");
}
System.out.println(i % base == 0 ? System.lineSeparator() : "");
}
}
}
示例运行:
Enter a number do draw some squares: 3
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
*** *** ***
推荐阅读
- github-pages - 使用 Hugo 构建页面时 Git 子模块失败
- substrate - 在 Polkadot-js 中是否有创建 HD 钱包地址的方法
- python - 如何在 tensorflow 2.0 中选择“tensorflow.keras”和“tensorflow.python.keras”?
- sql - 如果另一列为空(但不是 NULL),我如何更新列?
- entity-framework - 从 .sql 文件插入 SQL 关键字
- react-native - 在 android 6 及以下版本上反应原生 Flatlist 空白区域
- python - 减少校准中的测量次数
- mime-types - 更改应用程序/xml 全局的默认服务首选项
- python - Python 类型:返回类型与 Java Clazz 中的 Clazz[T] 等泛型
- docker - 文件挂载为目录而不是 docker-in-docker (dind) 中的文件