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 clásico de programación, perfecto para practicar los bucles.
El factorial de un número n (escrito como n!) es el producto de todos los enteros positivos del 1 al 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 del rango:
var result = 1
let n = 5
for i in 1...n {
result *= i
}
print(result) // Salida: 120El bucle multiplica result por 1, después por 2, después 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 tome n y devuelva el factorial de ese número.
Usa un bucle para multiplicar entre sí todos los enteros positivos del 1 al n.
Parámetros:
n(Int): Un 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.
Prué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 móduloAsignación compuestaRepaso: matemáticas simplesOperadores de comparación7Entrada/salida básica
Función printInterpolación de cadenasEntrada con ReadLineConversión de tiposRepaso: hasta 120Repaso: verdadero o falso10Funciones
Declarar una funciónParámetros y argumentosValores de retornoEtiquetas de argumentosRepaso: función SigmaRepaso: función de validaciónValores predeterminados13Iteración sobre secuencias
Iteración sobre elementosEl método enumeradoIteración sobre cadenas P1Iteración sobre cadenas P22Variables
Let vs VarAnotaciones de tipoNúmerosCadenaBooleanoConvenciones de nomenclaturaRepaso: 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 bienvenidaObtención de datos11FizzBuzz con un giro
Descripción del juegoLa función FizzBuzz3Opcionales
Qué son los opcionalesDesenvolver con If LetGuard LetOperador de coalescencia nilRepaso: desenvoltura segura6Toma de decisiones
Sentencia IfIf - ElseRepaso - Calculadora simpleSentencia SwitchSwitch con rangos9Bucles
Bucle For-InBucle WhileBucle Repeat-WhileBreakContinueRepaso - FactorialRangos en buclesBucle anidadoRepaso - Entrada dinámicaPractica por tu cuenta: Playground de Swift