ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# Kotlin 程序:计算自然数之和 > 原文: [https://www.programiz.com/kotlin-programming/examples/sum-natural-numbers](https://www.programiz.com/kotlin-programming/examples/sum-natural-numbers) #### 在此程序中,您将学习在 Kotlin 中使用`for`循环和`while`循环来计算自然数之和。 您还将看到范围如何有助于解决问题。 正数 1、2、3... 称为自然数,其和是从 1 到给定数字的所有数字的结果。 对于 n,自然数之和为: ```kt 1 + 2 + 3 + ... + n ``` ## 示例 1:`for`循环和自然数之和 ```kt fun main(args: Array<String>) { val num = 100 var sum = 0 for (i in 1..num) { // sum = sum+i; sum += i } println("Sum = $sum") } ``` 运行该程序时,输出为: ```kt Sum = 5050 ``` 上面的程序从 1 循环到给定的`num`(100),并将所有数字加到变量`sum`上。 与 Java 不同,在 Kotlin 中,您可以使用*范围运算符*(`1..num`)创建*从 1 到`num`之间的数字范围*。 以下是等效的 Java 代码:[计算自然数总和的 Java 程序](/java-programming/examples/sum-natural-numbers) * * * 您还可以使用`while`循环解决此问题,如下所示: ## 示例 2:`while`循环和自然数之和 ```kt fun main(args: Array<String>) { val num = 50 var i = 1 var sum = 0 while (i <= num) { sum += i i++ } println("Sum = $sum") } ``` 运行该程序时,输出为: ```kt Sum = 1275 ``` 在上面的程序中,与`for`循环不同,我们必须在循环体内增加`i`的值。 尽管两个程序在技术上都是正确的,但在这种情况下最好使用`for`循环。 这是因为迭代次数(最多`num`)是已知的。 访问此页面以了解*如何使用递归*来查找自然数之和。