在此程序中,您将学习在Kotlin中使用for循环和while循环来计算自然数之和。您还将看到使用 range 如何有助于解决问题。
正数1、2、3 ...称为自然数,其和是从1到给定数字的所有数字的结果。
对于n,自然数之和为:
1 + 2 + 3 + ... + n
fun main(args: Array<String>) { val num = 100 var sum = 0 for (i in 1..num) { // sum = sum+i; sum += i } println("Sum = $sum") }
运行该程序时,输出为:
Sum = 5050
上面的程序从1到给定的num(100)循环,并将所有数字加到变量sum中。
与Java不同,在Kotlin中,可以使用 range(1..num) 和 in 运算符循环遍历1到num之间的数字。
这是等效的Java代码:计算自然数总和的Java程序
您还可以使用while循环解决此问题,如下所示:
fun main(args: Array<String>) { val num = 50 var i = 1 var sum = 0 while (i <= num) { sum += i i++ } println("Sum = $sum") }
运行该程序时,输出为:
Sum = 1275
在上面的程序中,与for循环不同,我们必须递增循环体内 i 的值。
尽管两个程序在技术上都是正确的,但在这种情况下最好使用for循环。这是因为迭代次数(最大为num)是已知的。