Iteradores · 6.3
fold e reduce
Todas as lições estão abertas — pule quando precisar.
fold acumula valores com uma função:
use std::Iter
let nums = [1, 2, 3, 4, 5]
// Soma
let sum = Iter::from(nums).fold(0, |acc, x| acc + x)
print(sum) // 15
// Produto
let product = Iter::from(nums).fold(1, |acc, x| acc * x)
print(product) // 120Objetivo: Use fold para encontrar o maior número em [3, 7, 1, 9, 4, 6]. Resultado: 9.
lição-6-3.zolo
Saída do programa
Execute o código para ver a saída