Repaso - Factorial
Parte de la sección Fundamentos del Journey de Swift de Coddy — lección 47 de 86.
¡Es hora de poner a prueba tus habilidades con los bucles! El factorial es un problema de programación clásico que es perfecto para practicar bucles.
El factorial de un número n (escrito como n!) es el producto de todos los números enteros positivos desde 1 hasta n. Por ejemplo:
5!= 5 × 4 × 3 × 2 × 1 = 1203!= 3 × 2 × 1 = 61!= 1
Para calcular un factorial con un bucle, comienzas con un resultado de 1 y lo multiplicas por cada número en el rango:
var result = 1
let n = 5
for i in 1...n {
result *= i
}
print(result) // Salida: 120El bucle multiplica result por 1, luego por 2, luego por 3, y así sucesivamente hasta llegar a n. Cada iteración se basa en el resultado anterior.
Desafío
FácilEscribe una función factorial que recibe n y devuelve el factorial de ese número.
Usa un bucle para multiplicar todos los números enteros positivos desde 1 hasta n.
Parámetros:
n(Int): Un número entero positivo (1 o mayor)
Devuelve: El factorial de n (Int)
Por ejemplo, si n es 4, la función calcula 1 × 2 × 3 × 4 = 24 y devuelve 24.
Hoja de referencia
El factorial de un número n (escrito como n!) es el producto de todos los números enteros positivos del 1 al n:
5!= 5 × 4 × 3 × 2 × 1 = 1203!= 3 × 2 × 1 = 61!= 1
Para calcular un factorial con un bucle, comienza con un resultado de 1 y multiplícalo por cada número en el rango:
var result = 1
let n = 5
for i in 1...n {
result *= i
}
print(result) // Salida: 120Pruébalo tú mismo
func factorial(n: Int) -> Int {
// Escribe el código aquí
}
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores Parte 1
Operadores aritméticosOperador de móduloAsignación compuestaResumen - Matemáticas simplesOperadores de comparación7E/S Básica
Función PrintInterpolación de StringsEntrada ReadLineConversión de TiposRepaso - Hasta 120Repaso - Verdadero o Falso10Funciones
Declarar una funciónParámetros y argumentosValores de retornoEtiquetas de argumentosResumen - Función SigmaResumen - Función de validaciónValores por defecto13Iterar sobre secuencias
Iterar sobre elementosEl método enumerateIterar sobre cadenas P1Iterar sobre cadenas P22Variables
Let vs VarAnotaciones de tiposNúmerosStringsBooleanosConvenciones de nomenclaturaResumen - Inicializar variables5Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 3Operador ternario8Calculadora para dividir la cuenta
Mensaje de bienvenidaObtener la entrada de datos11FizzBuzz con un giro
Descripción general del juegoLa función FizzBuzz3Opcionales
Qué son los opcionalesDesempaquetado con If LetGuard LetOperador de coalescencia nulaResumen - Desempaquetado seguro6Toma de decisiones
Sentencia IfIf - ElseRepaso - Calculadora simpleSentencia SwitchSwitch con rangos9Bucles
Bucle For-InBucle WhileBucle Repeat-WhileBreakContinueRepaso - FactorialRangos en buclesBucle anidadoRepaso - Entrada dinámica