Como se ha señalado por otros, la respuesta correcta es
for (n in 100 downTo 1) {
println(n)
}
Pero ¿por qué eligió el equipo Kotlin 100 downTo 1
vs 100..1
?
Creo que la sintaxis 100..1
sería incorrecta cuando intentemos usar variables en lugar de literales. Si escribimos
for (n in b..a)
entonces no estaría claro qué bucle se quiere utilizar.
Es posible que tengamos la intención de contar hacia atrás, pero si b
resulta ser más pequeño que a
, ¡entonces nuestro programa realmente contaría hacia arriba! Esa sería una fuente de errores.
Por qué no es "para (n en 100..1)"? ¿No podría ser un acuerdo que si el primer número es más grande entonces un rango cuenta hacia atrás? – x2bool