Menu
CoddyTech

Salida con formato

Parte de la sección Fundamentos del Journey de GO de Coddy. Lección 29 de 109.

Aprendamos a dar formato a nuestra salida en Go usando la función fmt.Printf(). Esta función nos permite mostrar valores en formatos específicos usando marcadores de posición.

Primero, creemos un programa que dé formato a distintos tipos de datos mediante marcadores de posición:

name := "Gopher"
age := 5
height := 1.5
    
fmt.Printf("Name: %s, Age: %d, Height: %.1f\n", name, age, height)

Después de ejecutar este código, el texto "Name: Gopher, Age: 5, Height: 1.5" aparecerá en la pantalla. Los marcadores de posición de nuestra cadena se reemplazan por los valores reales de nuestras variables.

Entendamos qué hace cada marcador de posición:

// %s se sustituye por un valor de cadena (name)
// %d se sustituye por un valor entero (age)
// %.1f se sustituye por un valor de punto flotante con 1 decimal (height)
// %t se sustituye por un valor booleano (true o false)
// %c se sustituye por un solo carácter (una runa como 'A')

El \n al final de una cadena de formato es un carácter de escape que mueve el cursor a una nueva línea, igual que al pulsar Intro. Debe aparecer dentro de las comillas, sin espacios antes de la comilla de cierre; de lo contrario, aparecerán espacios adicionales en la salida.

La función fmt.Printf() reemplaza cada marcador de posición por la variable correspondiente que proporcionamos después de la cadena de formato. El orden de las variables debe coincidir con el orden de los marcadores de posición.

Ahora probemos otro ejemplo con distintos tipos de formato:

pi := 3.14159
percentage := 0.75
letter := 'A'

fmt.Printf("Pi: %.2f, Percentage: %.1f%%, Letter: %c\n", pi, percentage*100, letter)

Después de ejecutar este código, el texto "Pi: 3.14, Percentage: 75.0%, Letter: A" aparecerá en la pantalla. Observa cómo %.2f muestra solo 2 decimales para pi, y multiplicamos el porcentaje por 100 para mostrarlo como un valor porcentual.

Observa también el %% en la cadena de formato. Esta es una secuencia de escape especial que imprime un signo % literal. Un solo % se trataría como el inicio de un marcador de posición, así que usamos %% siempre que queremos mostrar un símbolo de porcentaje real en la salida.

challenge icon

Desafío

Fácil

En este desafío, practicarás el uso de la salida formateada en Go con la función `fmt.Printf()`.

Tienes información sobre un producto que debe mostrarse en un formato específico usando verbos de formato. Las variables ya están definidas.

Tu tarea es usar `fmt.Printf()` con los verbos de formato adecuados para mostrar la información del producto:
- Usa `%s` para cadenas
- Usa `%d` para números enteros  
- Usa `%.2f` para números de punto flotante con 2 decimales
- Usa `%t` para valores booleanos

Muestra la información del producto exactamente como aparece en el resultado esperado.

Pruébalo tú mismo

package main

import "fmt"

func main() {
	// Información del producto
	productName := "Wireless Headphones"
	productPrice := 79.99
	productInStock := true
	productID := 12345
	
    // TODO: Usa fmt.Printf() con especificadores de formato para mostrar la información del producto:
    // Product: Wireless Headphones (ID: 12345)
    // Price: $79.99
    // In Stock: true
    //
    // Consejo: Usa %s para cadenas, %d para enteros, %.2f para números de punto flotante y %t para booleanos
    // Recuerda añadir \n al final de cada línea para que el formato sea correcto
	
	
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de Go online