Swift 中打印的 For 循环总和

Sum of Printed For Loop in Swift

对于一个项目,我正在尝试使用 Swift 求 10,000 以下的 3 和 5 的倍数之和。插入 NoobJokes。

使用 ForLoop 打印 3 和 5 的倍数相当容易,但我想知道如何..."sum" 我打印的所有项目。

for i in 0...10000 {
    if i % 3 == 0 || i % 5 == 0 { 
        print(i) 
    }
} 

(打印了468个单独的数字,如何求和?)

在 Swift 中,您可以在没有重复循环的情况下做到这一点:

let numberOfDivisiblesBy3And5 = (0...10000).filter{ [=10=] % 3 == 0 || [=10=] % 5 == 0 }.count

或者获取项目的总和:

let sumOfDivisiblesBy3And5 = (0...10000).filter{ [=11=] % 3 == 0 || [=11=] % 5 == 0 }.reduce(0, {[=11=] + })

试试这个:

var sum = 0
for i in 0...10000 {
    if i % 3 == 0 || i % 5 == 0 { 
        sum = sum + i
        print(i) 
    }
} 
print(sum)

你只需要对下面我喜欢的结果求和

 var sum = 0

 for i in 0...10000 {
    if i % 3 == 0 || i % 5 == 0 { 

      sum = sum + i
      print(i) 
    }
} 

现在 sum 包含值的总和

归根结底,这应该有效。

var sum = 0
for i in 0...10000 {
    if i % 3 == 0 || i % 5 == 0 { 
        sum += i
        print(i)
    }
} 
print(sum)

简单介绍一下流程。首先,您将需要一个变量,它可以在循环执行时保存您的总和值。您可以定义一个 optional variable of type Int 或使用与我在第一行中所做的相同的默认值对其进行初始化。每次循环执行时,imultiple of 3 or 5 将被添加到 totalSum 并且在最后一次迭代之后你会得到你的结果。

var totalSum = 0
for i in 0...10000 {
if i % 3 == 0 || i % 5 == 0
{
    print(i)
    totalSum = totalSum + i
}
}
print (totalSum)

range : 指定操作的数字范围。

这里我们使用filter方法过滤掉3和5的倍数,然后对过滤后的值求和。 (reduce(0,+) 完成工作)

let sum = (3...n).filter({([=10=] % 3) * ([=10=] % 5) == 0}).reduce(0,+)