Estoy un poco confundido con la respuesta que Xcode me está dando a este experimento en la Guía del lenguaje de programación Swift:
// Use a for-in to iterate through a dictionary (experiment)
let interestingNumbers = [
"Prime": [2, 3, 5, 7, 11, 13],
"Fibonacci": [1, 1, 2, 3, 5, 8],
"Square": [1, 4, 9, 16, 25]
]
var largest = 0
for (kind, numbers) in interestingNumbers {
for number in numbers {
if number > largest {
largest = number
}
}
}
largest
Yo entiendo que a medida que el diccionario está siendo atravesada, el número más grande se está creando a la variable, largest
. Sin embargo, estoy confundido sobre por qué Xcode dice que largest
se está configurando 5 veces, o 1 vez, o 3 veces, dependiendo de cada prueba.
Cuando reviso el código, veo que debe configurarse 6 veces solo en "Prime" (2, 3, 5, 7, 11, 13). Luego, debe omitir cualquier número en "Fibonacci", ya que todos son menores que el más grande, que actualmente está establecido en 13 desde "Prime". Luego, debe establecerse en 16, y finalmente en 25 en "Cuadrado", dando un total de 8 veces.
¿Me estoy perdiendo algo completamente obvio?