Declaración de funciones
Parte de la sección Fundamentos del Journey de Rust de Coddy. Lección 49 de 75.
Una función es una secuencia de código que tiene un nombre. El propósito de una función es reutilizar un fragmento de código varias veces.
Por ejemplo, echa un vistazo a este código:
println!("Welcome to Coddy");
println!("New session...");
println!("Welcome to Coddy");
println!("Another session...");
println!("Welcome to Coddy");Usamos el mismo código println!("Welcome to Coddy") una y otra vez. Otro problema con este código es que, si quisiéramos cambiar el mensaje: Welcome to Coddy por algo diferente, como "Welcome aboard", habría que cambiar 3 líneas de código diferentes. Para resolver este problema, usaremos funciones.
Para declarar una función, usamos la siguiente sintaxis:
fn function_name(parameters) {
// código
}Para nuestro ejemplo, crearemos una función llamada greet y tendrá este aspecto:
fn greet() {
println!("Welcome to Coddy");
}Para usar/llamar/ejecutar la función, escribimos greet();:
greet();
println!("New session...");
greet();
println!("Another session...");
greet();Esto dará como resultado la misma salida que arriba.
Nota: En Rust, el compilador te permite llamar a una función antes de que se declare en el archivo. Sin embargo, se recomienda, por convención, escribir la definición de la función antes de llamarla/ejecutarla.
Desafío
FácilEscribe un programa que obtenga una entrada, un número. El número de entrada indica cuántas veces ejecutar la función de abajo.
Crea una función que calcule la suma de todos los números entre 1 y 1000 (incluidos) y la imprima; ponle el nombre que quieras a la función.
¡Nota! Como convención recomendada, escribe la función antes de las instrucciones que la llaman o ejecutan en tu código.
Pruébalo tú mismo
use std::io;
// Declaración de la función
fn sum_numbers() {
// Completa la función
}
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input).unwrap();
let n: i32 = input.trim().parse().unwrap();
for _ in 0..n {
// Llama a la función n veces
}
}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óduloAtajos aritméticosOperadores de comparaciónComparación de strings5Operadores Parte 2
Operadores lógicos Parte 1Operadores lógicos Parte 2Repaso - Lógica simpleOperadores lógicos Parte 311Funciones
Declaración de funcionesParámetros y argumentosValores de retornoMúltiples valores de retornoRepaso: Función SigmaRepaso: Función de validación3Variables Parte 2
Declaración de tiposConvenciones de nomenclaturaInferencia de tiposResumen - Inicializar variablesConversión de tipos9Bucles
For sobre seriesBucle WhileBreakContinueBucle anidadoEtiquetas de bucleBucle infinitoResumen - Entrada dinámicaPractica por tu cuenta: Compilador de Rust online