java - 如何使用循环减少每行中打印的(相同)字符的数量?
解决方案
让我们从一个更简单的例子开始:
***
**
*
你看到什么模式?模式是在每一行上,星号数量和空格数量之和是恒定的。我现在将这个常量L
称为line length。
由此,我们可以推断amountOfSpaces
是L - amountOfAsterisks
,反之亦然(因为代数的魔法定律也适用于此)。
因此,由此我们可以推断出,在每一行上,我们需要先打印L - amountOfAsterisks
空格,然后再打印amountOfAsterisks
. 对于这样的情况,for
循环是一种救命稻草(在更专业的代码中(就像你可以使用花哨的终端图形获得的专业一样),这会有所不同,因为实际上使用for
-loops 来实现这样的功能O(N)
) .
剩下的由你决定
推荐阅读
- javascript - 我的块引用没有运行。我也链接了引导 css 和 js 文件,但它似乎不起作用
- javascript - 将键值插入AngularJS中的数组时出现“.push不是函数”错误
- javascript - 在反应项目中使用 webpack 加载无效或意外的令牌加载 css 文件
- amazon-web-services - 使用 Terraform 计数创建多个 RDS 实例,但具有不同的标签
- azure - 如何检查arm模板中是否存在资源
- php - 如何扩展插件以与其他插件同时运行?
- javascript - 如何将 vue-virtual-scroller 与 Element UI Table 一起使用?
- sql-server - 在 microsoft visual foxpro 中执行一些计算后从 sql-server 读取数据并更新表
- java - 如何从 RecyclerView 适配器获取传递给 MainActivity 的变量?
- javascript - 用于长文本的 HTML 字幕自动收报机