Parámetros de función
Parte de la sección Fundamentos del Journey de GO de Coddy — lección 54 de 109.
Los parámetros de función son valores que pasas a una función al llamarla. Permiten que las funciones trabajen con diferentes datos cada vez que son llamadas.
Crea una función con parámetros enumerando sus nombres y tipos entre paréntesis:
func add(x int, y int) {
sum := x + y
fmt.Println("Sum:", sum)
}
func main() {
add(5, 3)
add(10, 20)
}Cuando ejecutas este programa, la salida es:
Sum: 8
Sum: 30Los parámetros con el mismo tipo se pueden escribir de forma más concisa:
func greet(first, last string) {
fmt.Println("Hello,", first, last)
}Las funciones también pueden devolver valores especificando un tipo de retorno:
func multiply(x, y int) int {
return x * y
}
func main() {
result := multiply(4, 5)
fmt.Println("Result:", result) // Salida: Result: 20
}Desafío
PrincipianteEn este desafío, practicarás el trabajo con parámetros de funciones. Debes completar una función que reciba dos parámetros de tipo cadena y los combine para crear un mensaje de saludo.
La función createGreeting ya está definida, pero le faltan los parámetros. Tu tarea es agregar los parámetros correctos y utilizarlos en el cuerpo de la función.
Hoja de referencia
Los parámetros de función permiten que las funciones trabajen con diferentes datos cada vez que son llamadas.
Define los parámetros enumerando sus nombres y tipos entre paréntesis:
func add(x int, y int) {
sum := x + y
fmt.Println("Sum:", sum)
}Los parámetros con el mismo tipo pueden escribirse de forma más concisa:
func greet(first, last string) {
fmt.Println("Hello,", first, last)
}Las funciones pueden devolver valores especificando un tipo de retorno:
func multiply(x, y int) int {
return x * y
}Pruébalo tú mismo
package main
import "fmt"
// TODO: Agrega parámetros a esta función para aceptar un saludo y un nombre
// La función debe recibir dos parámetros de tipo string: greeting y name
// Puedes escribirlos como (greeting string, name string) o (greeting, name string)
func createGreeting(/* agrega los parámetros aquí */) string {
// TODO: Devuelve una cadena que combine el saludo y el nombre
// Por ejemplo: "Hello, John!"
// Usa el formato: greeting + ", " + name + "!"
}
func main() {
// Estas llamadas de prueba ya están definidas para ti
message := createGreeting("Hello", "Gopher")
fmt.Println(message)
// Prueba con diferentes valores
message = createGreeting("Welcome", "Friend")
fmt.Println(message)
}Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4Operadores de comparación y lógicos
Operadores de comparación - Parte 1Operadores de comparación - Parte 2Operador lógico ANDOperador lógico OROperador lógico NOTConceptos básicos de precedencia de operadoresResumen: Realizar comparaciones7Flujo de control: Bucles
Explicación del bucle `for`Bucle `for` - BásicoBucle `for` - Solo condiciónLa palabra clave `break`La palabra clave `continue`Bucles anidadosResumen - Repetición de acciones2Variables y tipos de datos básicos
¿Qué es una variable?Inferencia de tipos con `:=`Enteros (int)Números de punto flotanteBooleanosStringsValores ceroConstantesConvenciones de nomenclaturaResumen - Variables y tipos5Entrada y salida básica
Salida con formatoVerbos de formatoImpresión de tiposObtener entrada básica del usuarioResumen: Entrada y salida8Funciones
Comprendiendo las funcionesDeclaración de una funciónLlamada a funcionesParámetros de funciónRetorno de un solo valorRetorno de múltiples valoresValores de retorno con nombreConceptos básicos del alcance de las funcionesResumen: Creando código reutilizable3Operadores básicos
Operadores aritméticosOperador de divisiónEl operador móduloOperador de asignaciónOperadores de asignación compuestaIncremento y decrementoResumen - Cálculos6Flujo de control: Condicionales
La sentencia `if`La palabra clave `else`La palabra clave `else if`Sombreado de variables en `if`Inicialización de variablesLa sentencia `switch``switch` con expresiones`switch` sin expresiónLa palabra clave `fallthrough`Resumen: Toma de decisiones