Swift 帮助实现for in-loop

Swift 帮助实现for in-loop,swift,Swift,伙计们,我不明白第二行是什么意思? 还有第5行 请有人给我解释一下,非常感谢。这是一个很好的三角形。:) 循环的第一个表示内部循环将执行的次数。 即:6次(1…6) 循环的秒表示每行开头的空格。 它将执行7次减去外部循环的当前迭代次数,用i表示 例如,在第一次迭代期间: i=1 j将是1…(7-6);这是6倍(1…6)。 六个空格将放在第一行 第二次迭代: i=2 j将是1…(7-2);这是5倍(1…5)。 第二行将有五个空格 不适用于第三个和最后一个for循环:它根据外部循环(i)向输出中添加

伙计们,我不明白第二行是什么意思? 还有第5行

请有人给我解释一下,非常感谢。

这是一个很好的三角形。:)

循环的第一个
表示内部循环将执行的次数。
即:6次(1…6)

循环的
表示每行开头的空格。
它将执行7次减去外部循环的当前迭代次数,用
i
表示
例如,在第一次迭代期间:

i
=1
j
将是1…(7-6);这是6倍(1…6)。
六个空格将放在第一行

第二次迭代:
i
=2
j
将是1…(7-2);这是5倍(1…5)。
第二行将有五个空格

不适用于第三个和最后一个
for循环
:它根据外部循环(
i
)向输出中添加
*
字符。
例如,在第一次迭代中:
i
=1
j
将是1…(2*1)-1;这是一次(1…1)。
一个
*
字符将放在第一行

第三次迭代:
i
=3
j
将是1…(2*3)-1;这是五倍(1…5)。
五个
*
字符将放在第三行

像这样有趣的代码应该放在一个操场上:

我们可以清楚地看到发生了什么。o/


有关
的更多信息,请参见带有
数值范围的in-loops
:Swift documentation这是对您的小说明:

for i in 1...6 {

    for j in 1...7-i {
        print(" ", terminator: "")
    }

    for j in 1...2*i-1 {
        print("*", terminator: "")
    }
    print("")
}
  • 我们在每个循环中进行1到6次迭代,j将从1变为6

  • 这个迭代用空格填充左边的部分,但是我们应该用公式(7-循环1位置(从1到6))来填充空格

  • 此迭代使用条件(2*循环1位置(从1到6)-1)填充三角形中的*


  • 在每行打印“i”,“j”,这可能会对你有所帮助。谢谢兄弟。这是一个极好的回答。我刚刚在swift编程书中找到了这个练习,只是混淆了第二个循环是如何工作的。现在清楚了。回答得很好。
    for i in 1...6 { // 1) This is loop from 1 to 6 it is the depth of the triangle.
    
        for j in 1...7-i { // 2) This is empty space " " loop for filling left side of the triangle.
            print(" ", terminator: "")
        }
    
        for j in 1...2*i-1 { // 3) This is * loop for filling of the triangle parts.
            print("*", terminator: "")
        }
        print("")
    }