2.5.3
到目前为止,这是我的代码,但是会引发错误:
“ *”(行-i-1)中的错误:二进制运算符的非数字参数 来电:金字塔->打印 执行停止
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*
答案 0 :(得分:1)
您可以在网上找到很多(伪代码)示例。那应该是您解决问题的第一个方法。 SO不是免费的代码编写服务,如果您展示出自己真正解决问题的尝试,您将获得更加积极的响应。
此外,这是我发现的here代码示例的“粗俗” R实现。该代码可以并且可能应该是“ R修饰的”,我鼓励您花一些时间这样做。我保证您会学到很多。例如,应该可以通过使用向量化函数来替换大多数(全部?)显式for
循环。
diamond <- function(max) {
# Upper triangle
space <- max - 1
for (i in 0:(max - 1)) {
for (j in 0:space) cat(" ")
for (j in 0:i) cat("* ")
cat("\n")
space <- space - 1
}
# Lower triangle
space = 1;
for (i in (max - 1):1) {
for (j in 0:space) cat(" ")
for (j in 0:(i - 1)) cat("* ")
cat("\n")
space <- space + 1
}
}
diamond(5)
# *
# * *
# * * *
# * * * *
#* * * * *
# * * * *
# * * *
# * *
# *